搜尋

首頁  >  問答  >  主體

关于weex页面在android端跳转的问题

在weex页面中通过 navigator.push的方式跳转页面,而在android端是通过startActivity方法隐式跳转页面;所有展示weex页面的activity的intent-filter中都得有如下配置

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

而真正区分是目标activity的是data标签
<data android:scheme="http" android:host="192.168.2.31" android:path="/dist/modules/mymessage.js"/>
那么问题来了是不是我有多少个navigator.push,android端就得有多少个activity?怎样来实现activity复用?
比如 push 的uri地址分别为
http ://192.168.2.31:8080/dist/modules/1
http ://192.168.2.31:8080/dist/modules/2
安照前面的思路 android就得注册两个activity,还有这个最大的缺陷就是你必须提前知道uri参数,如果是weex页面从服务器后台拿的;android就无能为力了。该怎么避免这种情况 ,各位大神请不吝赐教

PHP中文网PHP中文网2811 天前671

全部回覆(2)我來回復

  • 高洛峰

    高洛峰2017-04-18 09:22:00

    你可以參考下這個專案的實現想法
    https://github.com/hanliuxin5...

    回覆
    0
  • PHP中文网

    PHP中文网2017-04-18 09:22:00

    可能你理解有點問題吧,載入的頁面每次打開的都是同一個Activity,用默认的navigator跳转,都是加载categorycom.taobao.android.intent.category.WEEXActivity。所以你只注册这一个Activity就可以了。當然如果有特殊處理你可以定義自己的導航模組,然後做對應的處理。

    回覆
    0
  • 取消回覆