You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ionic Cordova项目升级API 31后Android 12/13无法安装运行问题

Ionic Cordova API31升级后Android12/13无法安装运行的解决方案

1. 适配Android12包可见性限制

Android12(API31)开始强制要求声明包访问权限,否则应用无法正常交互甚至安装失败。在AndroidManifest.xml中添加:

<uses-permission android:name="android.permission.QUERY_ALL_PACKAGES" />

若不需要全量包访问,也可通过<queries>标签指定需交互的应用或Intent:

<queries>
    <intent>
        <action android:name="android.intent.action.VIEW" />
        <data android:scheme="https" />
    </intent>
</queries>

2. 更新Cordova Android平台版本

确保使用适配API31+的Cordova Android平台,执行命令:

cordova platform remove android
cordova platform add android@11.0.0

(注:android@11.0.0及以上版本原生支持API31,若已安装最新版,检查平台配置是否有未同步的变更)

3. 修复后台启动Activity规则

Android12禁止无权限的后台Activity启动,检查代码中启动Activity的逻辑,添加必要Flag:

Intent intent = new Intent(context, TargetActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP);
context.startActivity(intent);

若为推送跳转等场景,确保在前台上下文触发启动。

4. 适配精确闹钟权限(若使用定时任务)

Android12对定时任务新增权限要求,在AndroidManifest.xml中声明:

<uses-permission android:name="android.permission.SCHEDULE_EXACT_ALARM" />

同时针对Android12+动态申请权限:

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
    AlarmManager alarmManager = context.getSystemService(AlarmManager.class);
    if (!alarmManager.canScheduleExactAlarms()) {
        Intent intent = new Intent(Settings.ACTION_REQUEST_SCHEDULE_EXACT_ALARM);
        intent.setData(Uri.parse("package:" + context.getPackageName()));
        context.startActivity(intent);
    }
}

5. 检查签名与打包配置

Android12要求应用使用V2/V3签名方案,在app/build.gradle中启用:

android {
    signingConfigs {
        release {
            v2SigningEnabled true
            v3SigningEnabled true
        }
    }
}

同时确保Android Build Tools版本在31.0.0及以上。

6. 排查插件兼容性

旧版Cordova插件可能未适配API31,执行cordova plugin list列出所有插件,更新或替换未适配的插件,比如安装AndroidX适配插件:

cordova plugin add cordova-plugin-androidx-adapter

内容的提问来源于stack exchange,提问作者Alvaro Junior Rojas Pinto

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 02:01:10