我遇到了由 gms 库版本
17.0.0
引起的生产崩溃,建议将所有相关依赖项都改为 18.0.2
,我就是这么做的。
我们遇到的所有以下库
18.0.2
,
play-services-tagmanager
play-services-auth-api-phone
play-services-maps
除了,
play-services-ads-identifier
,它仅在 18.0.1
作为其最新版本。
Strongly consider using FLAG_IMMUTABLE, only use FLAG_MUTABLE if some functionality depends on the PendingIntent being mutable, e.g. if it needs to be used with inline replies or bubbles.
at android.app.ActivityThread.handleReceiver (ActivityThread.java:4520)
at android.app.ActivityThread.access$1900 (ActivityThread.java:259)
at android.app.ActivityThread$H.handleMessage (ActivityThread.java:2219)
at android.os.Handler.dispatchMessage (Handler.java:106)
at android.os.Looper.loopOnce (Looper.java:233)
at android.os.Looper.loop (Looper.java:344)
at android.app.ActivityThread.main (ActivityThread.java:8249)
at java.lang.reflect.Method.invoke
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:589)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1071)
Caused by java.lang.IllegalArgumentException: <app id omitted>: Targeting S+ (version 31 and above) requires that one of FLAG_IMMUTABLE or FLAG_MUTABLE be specified when creating a PendingIntent.
Strongly consider using FLAG_IMMUTABLE, only use FLAG_MUTABLE if some functionality depends on the PendingIntent being mutable, e.g. if it needs to be used with inline replies or bubbles.
at android.app.PendingIntent.checkFlags (PendingIntent.java:375)
at android.app.PendingIntent.getBroadcastAsUser (PendingIntent.java:651)
at android.app.PendingIntent.getBroadcast (PendingIntent.java:638)
at com.google.android.gms.internal.gtm.zzbv.zzfe (zzbv.java)
at com.google.android.gms.internal.gtm.zzbv.cancel (zzbv.java)
at com.google.android.gms.internal.gtm.zzbv.zzaw (zzbv.java)
at com.google.android.gms.internal.gtm.zzan.zzag (zzan.java)
at com.google.android.gms.internal.gtm.zzap.<init> (zzap.java)
at com.google.android.gms.internal.gtm.zzap.zzc (zzap.java)
at com.google.android.gms.analytics.CampaignTrackingReceiver.onReceive (CampaignTrackingReceiver.java)
at android.app.ActivityThread.handleReceiver (ActivityThread.java:4504)
除了我能想到的旧 gms 库版本之外,我不知道其他依赖项可能会导致此问题。
我的
work-runtime-ktx
位于2.8.1
,这是可能导致此帖子中提到的问题的版本的更高版本
如果我离开
play-services-ads-identifier
在18.0.1
还会出现这个问题吗?