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系统,希望帮忙看看,谢谢

阅读 2.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"
            }
        }
        

    生效

      • 3
      • 新人请关照

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

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

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

        并未生效 = =!

          • 1
          • 新人请关照

          请问有没有解决方法呀

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

              • 1
              • 新人请关照

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

                撰写回答

                登录后参与交流、获取后续更新提醒