Samsung Galaxy S8设备上的SecurityException

问题描述 投票:2回答:1

我们的Android应用的特定用户群根据Crashlytics经历了以下崩溃。

Fatal Exception: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.bundle.id/com.bundle.id.MainActivity}: java.lang.SecurityException: uid 10346 cannot get secrets for accounts of type: com.osp.app.signin
       at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2955)
       at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3030)
       at android.app.ActivityThread.-wrap11(Unknown Source)
       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1696)
       at android.os.Handler.dispatchMessage(Handler.java:105)
       at android.os.Looper.loop(Looper.java:164)
       at android.app.ActivityThread.main(ActivityThread.java:6938)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)

我们已经搜索,搜索并试图复制,但没有成功。根据Crashlytics的说法,它仅发生在Samsung Galaxy S8设备上。

我们已经测试了一个,但是效果很好。有没有人以前见过此错误或知道是什么原因引起的?真令人沮丧。

android crashlytics
1个回答
0
投票

[不确定OP的问题是什么,但是我遇到了相同的崩溃,事实证明,问题是我从Account获取了addOnAccountsUpdatedListener对象。在大多数设备上,从该API获取的列表都是按accountType过滤的。在某些Samsung设备上,如果已设置,它还将在您的手机上包括Samsung帐户。解决方法:

    accountManager.addOnAccountsUpdatedListener({ accounts ->
      // Samsung is great: it sends us updates on Samsung accounts even though the accountType
      // doesn't match.
      val ourUpdatedAccounts = accounts.filter { account -> account.type == myAccountType }
      // do something with ourUpdatedAccounts
    }, Handler(), false)
© www.soinside.com 2019 - 2024. All rights reserved.