美文网首页
Android12 适配注意点

Android12 适配注意点

作者: Persisten | 来源:发表于2022-08-12 15:36 被阅读0次

    1、Installed Build Tools revision 31.0.0 is corrupted

    参考该篇文章

    2、exported属性声明变更

    当应用的targetSdkVersion升级到了31并且是以Android12设备作为安装平台(以下简称为以Android12为目标平台的应用),当在AndroidManifest中声明的组件,如果有加上<intent-filter>标签,必须显示的声明exported的属性,否则应用是无法在Android12的设备上进行安装的。

    如果没有排除这个问题,在小米Android 12的真机上会提示用户安装失败,提示只有 INSTALL_FAILED_USER_RESTRICTED,很容易误导用户按照以往的经验去排查,耗时费力

    解决方案:
    1、直接通过Android studio 解析安装包,查找使用intent-filter的组件,然后依次加上exported声明。
    2、针对sdk中声明的组件,可以利用AndroidManifest的merge特性,在app项目的AndroidManifest声明一样的组件,加上exported即可。

    3、pendingIntent可变性变更

    如果应用是以Android12为目标平台的应用,在创建PendingIntent的时候,一定要要加上可变性flag,否则运行时会抛出异常


    image.png

    找到相关使用处,做相应修改,可封装如下方法

    public static int getFlagWithInMutable(int flag) {
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
            flag = flag | PendingIntent.FLAG_IMMUTABLE;
        }
        return flag;
    }
    

    相关文章

      网友评论

          本文标题:Android12 适配注意点

          本文链接:https://www.haomeiwen.com/subject/bgoxgrtx.html