weex集成android进行页面跳转报错

使用navigator.push方法进行页面跳转,在android上没有响应。
js代码:
var navigatorPart = __weex_require__('@weex-module/navigator');
var params = {

 url': 'http://dotwe.org/raw/dist/6cd1703a45d7b2752cf05303069ce881.js',
 'animated': "false"

};
navigatorPart.push(params, function (e) {});

后台报错如下:

E/Navigator: android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.VIEW cat=[com.taobao.android.intent.category.WEEX] dat=http://dotwe.org/raw/dist/6cd... (has extras) }

             at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1632)
             at android.app.Instrumentation.execStartActivity(Instrumentation.java:1424)
             at android.app.Activity.startActivityForResult(Activity.java:3424)
             at android.support.v4.app.BaseFragmentActivityJB.startActivityForResult(BaseFragmentActivityJB.java:48)
             at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:75)
             at android.app.Activity.startActivityForResult(Activity.java:3385)
             at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:856)
             at android.app.Activity.startActivity(Activity.java:3643)
             at android.app.Activity.startActivity(Activity.java:3611)
             at com.taobao.weex.appfram.navigator.WXNavigatorModule.push(WXNavigatorModule.java:159)
             at java.lang.reflect.Method.invokeNative(Native Method)
             at java.lang.reflect.Method.invoke(Method.java:515)
             at com.taobao.weex.bridge.MethodInvoker.invoke(MethodInvoker.java:226)
             at com.taobao.weex.bridge.WXModuleManager$2.run(WXModuleManager.java:340)
             at android.os.Handler.handleCallback(Handler.java:733)
             at android.os.Handler.dispatchMessage(Handler.java:95)
             at android.os.Looper.loop(Looper.java:136)
             at android.app.ActivityThread.main(ActivityThread.java:5103)
             at java.lang.reflect.Method.invokeNative(Native Method)
             at java.lang.reflect.Method.invoke(Method.java:515)
             at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
             at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
             at dalvik.system.NativeStart.main(Native Method)

求指导,谢谢!

阅读 6.9k
3 个回答

在安卓里,weex是使用Activity的category name来确定使用哪个Activity来渲染weex的。你这明显是没有指定Activity,如果是使用weexpack生成的android工程,那是设置好的。

<activity
                android:name=".WXPageActivity"
                android:label="@string/app_name"
                android:screenOrientation="portrait"
                android:theme="@android:style/Theme.NoTitleBar">
            <intent-filter>
                <action android:name="android.intent.action.VIEW"/>
                <action android:name="com.alibaba.weex.protocol.openurl"/>

                <category android:name="android.intent.category.DEFAULT"/>
                <category android:name="com.taobao.android.intent.category.WEEX"/>

                <data android:scheme="http"/>
                <data android:scheme="https"/>
                <data android:scheme="file"/>
            </intent-filter>
        </activity>

这里的

<category android:name="com.taobao.android.intent.category.WEEX"/>
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进