java - 某些手机上的 bp.purchase 中断
问题描述
我有一个运行良好的 android 应用程序,并且我已经测试了 In App purchase V3,并且在外部三星手机中没问题。它已准备好发布,但突然间它在这一行出现以下错误:
bp.purchase(MainActivity.this, "android.test.purchased");
错误如下:
01-03 21:43:07.492 805-1531/? E/DatabaseUtils: Writing exception to parcel
java.lang.SecurityException: Permission Denial: get/set setting for user asks to run as user -2 but is calling from user 0; this requires android.permission.INTERACT_ACROSS_USERS_FULL
at com.android.server.am.ActivityManagerService.handleIncomingUser(ActivityManagerService.java:15168)
at android.app.ActivityManager.handleIncomingUser(ActivityManager.java:2492)
at com.android.providers.settings.SettingsProvider.call(SettingsProvider.java:688)
at android.content.ContentProvider$Transport.call(ContentProvider.java:325)
at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:275)
at android.os.Binder.execTransact(Binder.java:404)
at dalvik.system.NativeStart.run(Native Method)
01-03 21:43:07.492 805-1531/? W/ActivityManager: Permission Denial: get/set setting for user asks to run as user -2 but is calling from user 0; this requires android.permission.INTERACT_ACROSS_USERS_FULL
01-03 21:43:07.552 4095-4326/? I/Finsky: [333] com.google.android.finsky.billing.iab.an.b(45): com.example.ashamsa.iaptest: Account from first account - [1-W58wCwpHIMWNDOrKtUcDzJ-_k]
01-03 21:43:07.572 1330-1330/? W/ChimeraUtils: Non Chimera context
01-03 21:43:07.592 1330-1347/? E/Auth: [GoogleAccountDataServiceImpl] getToken() -> BAD_AUTHENTICATION. Account: <ELLIDED:-1755391382>, App: com.android.vending, Service: androidmarket
mrn: Long live credential not available.
at gzz.c(:com.google.android.gms@14799002@14.7.99 (000304-223214910):18)
at gzz.a(:com.google.android.gms@14799002@14.7.99 (000304-223214910):11)
at gzz.b(:com.google.android.gms@14799002@14.7.99 (000304-223214910))
at gyk.a(:com.google.android.gms@14799002@14.7.99 (000304-223214910):22)
at inl.a(:com.google.android.gms@14799002@14.7.99 (000304-223214910):7)
at inl.a(:com.google.android.gms@14799002@14.7.99 (000304-223214910):153)
at iml.a(:com.google.android.gms@14799002@14.7.99 (000304-223214910):2)
at imj.a(:com.google.android.gms@14799002@14.7.99 (000304-223214910):15)
at imj.a(:com.google.android.gms@14799002@14.7.99 (000304-223214910):6)
at gux.a(:com.google.android.gms@14799002@14.7.99 (000304-223214910):33)
at gux.a(:com.google.android.gms@14799002@14.7.99 (000304-223214910):81)
at gux.a(:com.google.android.gms@14799002@14.7.99 (000304-223214910):254)
at dsq.a(:com.google.android.gms@14799002@14.7.99 (000304-223214910):5)
at utz.a(:com.google.android.gms@14799002@14.7.99 (000304-223214910):5)
at csb.onTransact(:com.google.android.gms@14799002@14.7.99 (000304-223214910):4)
at android.os.Binder.transact(Binder.java:361)
at dui.onTransact(:com.google.android.gms@14799002@14.7.99 (000304-223214910):3)
at android.os.Binder.transact(Binder.java:361)
at com.google.android.gms.internal.o$a$a.a(Unknown Source)
at com.google.android.gms.auth.GoogleAuthUtil.getToken(Unknown Source)
at com.google.android.gsf.loginservice.GoogleLoginService$AccountAuthenticatorImpl.getAuthToken(GoogleLoginService.java:302)
at android.accounts.AbstractAccountAuthenticator$Transport.getAuthToken(AbstractAccountAuthenticator.java:196)
at android.accounts.IAccountAuthenticator$Stub.onTransact(IAccountAuthenticator.java:113)
at android.os.Binder.execTransact(Binder.java:404)
at dalvik.system.NativeStart.run(Native Method)
我花了几个多小时才猜到手机可能有问题,所以我更换了外接电话,它像以前一样工作,没有任何问题。所以我很困惑在我的测试手机中可以改变什么导致上述错误。我构建了一个非常简单的应用程序来测试应用程序购买,这个基本应用程序再次运行,另一个崩溃。我应该提一下,在这突然发生之前,两部手机都工作得非常好,
如果有人能对此有所了解,我将不胜感激,谢谢,
解决方案
所以这就是发生的事情,尽管我不确定应用程序应该如何处理它。
在我的手机>设置>帐户>谷歌中,我有 3 个注册帐户,其中两个不同步。我删除了它们,它现在开始工作。
推荐阅读
- c# - 数据类型 xml 和 varchar 在 equal to 运算符中不兼容
- javascript - 如何在具有空对象的数组的子数组中找到最远的对象?
- extjs - 根据组合框选择动态创建一个或多个文本字段
- java - 将日期(谷歌日历 api)转换为带时区的日期
- arrays - 在字符串列表上并行执行 if else 条件
- r - R中的引导CI
- python - 如何获取 .ipynb 文件的 JSON 代码?
- c# - 在 C# 中高效地将 DataTable 转换为 List
- c# - 从 My.Settings 初始化 StringCollection 以避免空引用异常
- r - 如何在R中正确地将数据帧从整数转换为数字?