5

我已经为目标 API 31 更新了我的应用程序,现在我在运行时崩溃了,仅在搭载 Android 12 的手机中执行时。崩溃是:

E/AndroidRuntime: FATAL EXCEPTION: HuaweiApiManager
    Process: com.example.myapp, PID: 4873
    java.lang.IllegalArgumentException: com.example.myapp: 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.getActivityAsUser(PendingIntent.java:458)
        at android.app.PendingIntent.getActivity(PendingIntent.java:444)
        at android.app.PendingIntent.getActivity(PendingIntent.java:408)
        at com.huawei.hms.api.b.getErrPendingIntent(HuaweiApiAvailabilityImpl.java:10)
        at com.huawei.hms.common.internal.BaseHmsClient.resolution(BaseHmsClient.java:3)
        at com.huawei.hms.common.internal.BaseHmsClient.checkAvailabilityAndConnect(BaseHmsClient.java:34)
        at com.huawei.hms.common.internal.BaseHmsClient.connect(BaseHmsClient.java:1)
        at com.huawei.hms.common.internal.HuaweiApiManager$ConnectionManager.connect(HuaweiApiManager.java:21)
        at com.huawei.hms.common.internal.HuaweiApiManager$ConnectionManager.sendRequest(HuaweiApiManager.java:24)
        at com.huawei.hms.common.internal.HuaweiApiManager.connectAndSendRequest(HuaweiApiManager.java:8)
        at com.huawei.hms.common.internal.HuaweiApiManager.handleMessage(HuaweiApiManager.java:7)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loopOnce(Looper.java:201)
        at android.os.Looper.loop(Looper.java:288)
        at android.os.HandlerThread.run(HandlerThread.java:67)

此错误与Push Kit 何时包含 Android 12 所需的 android:exported 属性有关?

修复此错误的 HMS Base 版本的大致发布日期是什么?

4

1 回答 1

2

新版基础SDK已经发布:</p>

implementation 'com.huawei.hms:base:6.2.0.300'

此问题已修复,您可以先显式依赖此版本的 base sdk,这应该可以解决问题。

于 2021-10-14T09:01:25.270 回答