weex android 0.17.0 createInstance fail

weex android 0.17.0,启动偶尔会出现:degradeToH5|createInstance fail|wx_create_instance_error isJSFrameworkInit==false reInitCount == 1 错误

渲染代码用的是commons module的,AbstractWeexActivity.java中的;
如果renderPageByURL 在onCreate直接执行,出现这个错误的概率会特别高;
如果在把渲染代码放在postRunnable里头,那么,出现概率会很低,但是也会出现
测试设备是红米,MIUI9.0系统,希望帮忙看看,谢谢

阅读 6.5k
6 个回答

我也遇到这个问题,由于日志里出现 JSFrameworkInit = false
所以去源代码里找 应该什么时候被设置为true
https://github.com/apache/inc...
找到在下面的文件,然后断点调试所在函数initFramework

android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java

发现在执行mWXBridge.initFrameworkEnv 抛出异常

java.lang.UnsatisfiedLinkError: No implementation found for int com.taobao.weex.bridge.WXBridge.initFrameworkMultiProcess(java.lang.String, com.taobao.weex.bridge.WXParams, java.lang.String, boolean) (tried Java_com_taobao_weex_bridge_WXBridge_initFrameworkMultiProcess and Java_com_taobao_weex_bridge_WXBridge_initFrameworkMultiProcess__Ljava_lang_String_2Lcom_taobao_weex_bridge_WXParams_2Ljava_lang_String_2Z)

所以判断,应该是so没找到,所以修改gradle
gradle 里剔除其他abi

 defaultConfig {
        ....
        ndk {
            abiFilters "armeabi"
        }
    }
    

生效

新手上路,请多包涵

我的小米也遇到了同样的问题,二楼的方法没有解决。。

遇到了和楼主一样的问题。一样的错误。
但是修改
defaultConfig {

    ....
    ndk {
        abiFilters "armeabi"
    }
}

并未生效 = =!

新手上路,请多包涵

请问有没有解决方法呀

线上监控到这个问题频率有点高

新手上路,请多包涵

我在真机上页面展示正常,模拟器就报错errCode:-1001,msg:degradeToH5|createInstance fail|wx_create_instance_error isJSFrameworkInit==false reInitCount == 1

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏