我最近迁移到 Google IMA Android SDK v3.33.0 并且我了解到我的所有具有启动模式“单任务”的活动都在任务管理器中作为单独的任务打开!
测试非常简单,您只需将此依赖项添加到您的应用程序即可:
implementation ("com.google.ads.interactivemedia.v3:interactivemedia:3.33.0")
有两项活动,一项打开另一项是单一任务:
<activity
android:name=".MainActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".SubActivity"
android:exported="false"
android:launchMode="singleTask" />
这不会在 v3.31.0 及以下版本中发生,但从 v3.32.0 以上版本开始,有一个 Android 14 运行时崩溃修复程序,我需要它。
同时,我发现 IMA SDK 小组报告了这个错误: https://groups.google.com/g/ima-sdk/c/PfAnye3Hhww/m/08N6YyFsBAAJ
因此,在了解它正在利用 Android 应用程序的亲和力后,我设法找到了一种解决方法。
可以通过将
tools:remove="android:taskAffinity"
添加到清单文件中应用程序的标签来临时修复它,或者如果您已经在应用程序标签中声明了 taskAffinity
,则可以使用 tools:replace="taskAffinity"
代替。
期待 Google 的修复,以便我们摆脱这个黑客行为。