uni-app离线打包报错 APP随机闪退
uni-app离线打包报错 APP随机闪退
开发环境 | 版本号 | 项目创建方式 |
---|---|---|
uniapp/App | - | HBuilderX |
运行就报错
预期结果: 不报错
实际结果: 报错
bug描述:
W/System.err: java.lang.NoSuchFieldException: No field mHiddenApiWarningShown in class Landroid/app/ActivityThread; (declaration of 'android.app.ActivityThread' appears in /system/framework/framework.jar)
W/System.err: at java.lang.Class.getDeclaredField(Native Method)
W/System.err: at io.dcloud.common.util.PdrUtil.closeAndroidPDialog(PdrUtil.java:1214)
W/System.err: at android.app.ActivityThread.main(ActivityThread.java:7625)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:524)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:987)
E/platform: ClassNotFoundException io.dcloud.feature.x5.X5InitImpl init
E/platform: ClassNotFoundException io.dcloud.feature.weex.WeexDevtoolImpl registerReloadReceiver
E/platform: ClassNotFoundException io.dcloud.feature.weex.WeexDevtoolImpl initDebugEnvironment
更多关于uni-app离线打包报错 APP随机闪退的实战教程也可以访问 https://www.itying.com/category-93-b0.html
3 回复
前端用了x5,然后没有导入响应的包
你应该把你导入的包截图出来看看
这个错误主要是由于Android P(9.0)及以上版本对反射API的限制导致的,以及X5内核和Weex调试模块未正确集成的问题。以下是解决方案:
- 针对反射API限制问题: 在AndroidManifest.xml的application标签中添加:
<application
android:usesCleartextTraffic="true"
tools:ignore="GoogleAppIndexingWarning">
<meta-data
android:name="android.max_aspect"
android:value="2.1" />
<meta-data
android:name="android.min_supported_aspect_ratio"
android:value="2.1" />
</application>
- 针对X5内核问题: 确保在assets/data/dcloud_control.xml中配置了X5内核:
<web-view>
<x5 kernel="true"/>
</web-view>