Android 12 exported自动适配

Posted xiangzhihong8

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android 12 exported自动适配相关的知识,希望对你有一定的参考价值。

最新项目需要升级android 12,关于Android 12的新特性,大家可以参考Android 12 新特性预览,对于我们开发者来说,必须要适配的两点是:android:exportedSplashScreen 。此处我们重点讲一下android:exported

根据官方的介绍,从 Android 12 (即TargetSDK 31)开始,四大组件如果使用了 intent-filter, 但是没显性质配置 exported App 将会无法安装,甚至会出现编译不通过。

android:exported的主要作用是,设置 Activity 是否可由其他应用的组件启动, “true” 则表示可以,而“false”表示不可以。并且,启动的Activity就需要设置 exported 为 true。

然而,对于大多数的Android项目来说,我们可能会遇到下面的情况:

  • 如果出现问题的是第三方远程依赖,并且对方并没有提供源码和更新,你就无法直接修改;
  • 如果第三方依赖太多,查找哪些出了问题十分费时费力。

为此,使用脚本的方式是最方便的。修改时,我们只需要app/build.gradle中添加下面的脚本即可,下面是不同版本的Gradle的的脚本修改android:exported的情况。

gradle:3.4.3 以下版本<

以上是关于Android 12 exported自动适配的主要内容,如果未能解决你的问题,请参考以下文章

Android 12 自动适配 exported 深入解析避坑

Android 12 快速适配要点,永远别为适配掉光了头发

Android 12 行为变更:适配以Android 12为目标的应用

Android 12 行为变更:适配以Android 12为目标的应用

Android 12 行为变更:适配以Android 12为目标的应用

Android 12 已来,你的 App 崩溃了吗?