Android 16 uni-app在安卓手机端返回直接退出应用

Android 16 uni-app在安卓手机端返回直接退出应用

开发环境 版本号 项目创建方式
Windows Windows 10 HBuilderX

产品分类:
uniapp/App

PC开发环境操作系统:
Windows

HBuilderX类型:
正式

HBuilderX版本号:
4.76

手机系统:
Android

手机系统版本号:
Android 16

手机厂商:
小米

手机机型:
小米15Ultra

页面类型:
vue

vue版本:
vue2

打包方式:
云端

bug描述:
经测试,三星升级系统Android16、小米澎湃OS3 也是 Android 16。 调用系统返回,直接退出应用!!

也不能调用uni.downloadFile 下载文件

在HBuider X稳定版出现,alpha版正常


更多关于Android 16 uni-app在安卓手机端返回直接退出应用的实战教程也可以访问 https://www.itying.com/category-93-b0.html

3 回复

有解决吗,同样遇到了 @DCloud_HB_Gml

更多关于Android 16 uni-app在安卓手机端返回直接退出应用的实战教程也可以访问 https://www.itying.com/category-93-b0.html


试了4.82alpha版本确实可以解决

在 Android 16 系统中,uni-app 应用返回直接退出和 uni.downloadFile 无法调用的问题,通常与系统权限策略变更和 HBuilderX 版本兼容性有关。

问题分析:

  1. 返回键直接退出应用:Android 16 进一步收紧了后台活动管理,可能将某些页面路由事件误判为应用进入后台状态,触发强制退出。这与 onBackPress 生命周期或原生层对返回事件的处理逻辑相关。
  2. uni.downloadFile 失效:Android 16 对文件存储权限(如 MANAGE_EXTERNAL_STORAGE)或网络安全配置要求更严格,若未适配新规范,下载功能会静默失败。

解决方案:

  1. 升级 HBuilderX 至最新版本:Alpha 版正常而稳定版异常,说明官方已在测试版修复该兼容性问题。建议使用官方最新稳定版或对齐 Alpha 版的底层引擎版本。
  2. 显式处理返回逻辑:在页面中重写 onBackPress 方法,通过返回值 true 拦截默认退出行为:
    onBackPress() {
      // 可在此添加确认对话框
      return true; // 阻止默认返回
    }
回到顶部