Issue
I faced DeadSystemException in app on Huawei devices when HMSPackageManager tries to get info about services from Android PackageManager.
Stacktrace:
Fatal Exception: java.lang.RuntimeException: android.os.DeadSystemException
at android.app.ApplicationPackageManager.queryIntentServicesAsUser(ApplicationPackageManager.java:1192)
at android.app.ApplicationPackageManager.queryIntentServices(ApplicationPackageManager.java:1198)
at com.huawei.hms.utils.HMSPackageManager.f(HMSPackageManager.java:27)
at com.huawei.hms.utils.HMSPackageManager.i(HMSPackageManager.java:4)
at com.huawei.hms.utils.HMSPackageManager.refresh(HMSPackageManager.java:16)
at com.huawei.hms.utils.HMSPackageManager.getHMSPackageName(HMSPackageManager.java:8)
at com.huawei.hms.utils.HMSPackageManager.getHmsVersionCode(HMSPackageManager.java:1)
at com.huawei.hms.utils.HMSPackageManager.isApkUpdateNecessary(HMSPackageManager.java)
at com.huawei.hms.adapter.AvailableAdapter.isHuaweiMobileServicesAvailable(AvailableAdapter.java:77)
at com.huawei.hms.common.internal.BaseHmsClient.checkAvailabilityAndConnect(BaseHmsClient.java:134)
at com.huawei.hms.common.internal.BaseHmsClient.connect(BaseHmsClient.java:1)
at com.huawei.hms.common.internal.HuaweiApiManager$ConnectionManager.connect(HuaweiApiManager.java:97)
at com.huawei.hms.common.internal.HuaweiApiManager$ConnectionManager.sendRequest(HuaweiApiManager.java:96)
at com.huawei.hms.common.internal.HuaweiApiManager.connectAndSendRequest(HuaweiApiManager.java:37)
at com.huawei.hms.common.internal.HuaweiApiManager.handleMessage(HuaweiApiManager.java:35)
at android.os.Handler.dispatchMessage(Handler.java:103)
at android.os.Looper.loop(Looper.java:213)
at android.os.HandlerThread.run(HandlerThread.java:67)
Crash occurs on Android 8/9/10/11, so likely it's not android problem. Crash happens only on Huawei devices. Our app not call HMSPackageManager from any place, so I think it happens in time of HMS Core initialization. Is anyone has same problem?
Solution
Huawei support said that problem in Android OS, but they try to fix error in next HMS SDK update in mid of september.
Answered By - pilot
Answer Checked By - Marilyn (JavaFixing Volunteer)