uni-app云打包安卓系统5.0后,安装运行出现白屏问题

发布于 1周前 作者 phonegap100 来自 Uni-App

uni-app云打包安卓系统5.0后,安装运行出现白屏问题

产品分类

uniapp/App

配置信息

项目 信息
PC开发环境操作系统 WindowsPC
操作系统版本号 window 10
HBuilderX类型 正式
HBuilderX版本号 4.45
UI插件 uniui
手机系统 Android手机系统
版本号 Android 5.0
手机厂商 科电漆膜仪
页面类型 vue
vue版本 vue2
打包方式 云打包
项目创建方式 HBuilderX

Android配置

  • abiFilters: [“armeabi-v7a”, “arm64-v8a”, “x86”]
  • minSdkVersion: 21
  • targetSdkVersion: 30

操作步骤

云打包-安卓(apk包)-使用云端证书;apk安装到正常的手机上、模拟器都可以正常运行。通过adb install安装到科电漆膜检测仪后打开运行启动页后直接白屏。

错误提示

在本地USB连接科电漆膜检测仪真机运行调试,发现报错:

  • TypeError: undefined is not a function at view.umd.min.js:1
  • TypeError: Cannot read property ‘addVData’ of undefined at view.umd.min.js:1
  • Uncaught SyntaxError: Unexpected strict mode reserved word at app-view.js:20

1 回复

针对uni-app云打包后在安卓5.0及以上版本出现白屏的问题,这通常与兼容性、资源加载或代码执行异常有关。以下是一些可能帮助定位和解决问题的代码及配置检查示例,请根据实际情况进行调整和测试。

1. 检查Manifest配置

确保manifest.json中的配置正确,特别是app-plus部分的相关配置,如android下的permissionssplashscreen等设置。

{
  "app-plus": {
    "android": {
      "permissions": [
        "android.permission.INTERNET",
        // 其他必要权限
      ],
      "splashscreen": {
        "autoclose": true,
        "delay": 3000
      }
    }
  }
}

2. 检查入口文件

确认main.jsApp.vue中是否有代码导致应用启动失败。尝试简化启动逻辑,比如暂时移除所有路由守卫和复杂初始化代码。

// main.js 示例
import Vue from 'vue'
import App from './App'

Vue.config.productionTip = false

App.mpType = 'app'

const app = new Vue({
    ...App
})
app.$mount()

3. 调试日志

使用Android Studio或其他工具连接设备,查看应用日志(Logcat),寻找可能的错误信息或异常堆栈。

4. 兼容性检查

确保所有使用的第三方库和插件都兼容安卓5.0及以上版本。检查package.json中的依赖,并查阅相关文档。

5. 资源加载

检查静态资源是否正确加载,特别是图标、图片和网络请求的资源。确保资源路径正确,并且网络请求在安卓5.0上能正常进行。

6. 条件编译

如果代码中使用了条件编译,确保针对安卓5.0的代码分支是正确的。

<template>
  <view>
    <text v-if="$mp.system.platform === 'android' && $mp.system.version.startsWith('5.')">
      Android 5.0+ specific content
    </text>
    <text v-else>
      Other content
    </text>
  </view>
</template>

7. 清理和重建

尝试清理项目并重新构建,有时候简单的重建可以解决一些缓存或配置不一致的问题。

# 假设使用HBuilderX,可以在工具菜单中选择清理项目并重新编译

通过上述步骤,你应该能够逐步缩小问题范围,找到导致白屏的具体原因。如果问题依旧存在,建议查看uni-app社区和官方文档,或提交issue到uni-app的GitHub仓库寻求帮助。

回到顶部