AbstractCommandTask:处理任务时发生异常:com.amazon.a.a.n.a.a.a:AUTH_TOKEN_VERIFICATION_FAILURE:null:null

AbstractCommandTask: Exception occurred while processing task: com.amazon.a.a.n.a.a.a: AUTH_TOKEN_VERIFICATION_FAILURE: null: null

我之前使用亚马逊应用内购买 (IAP) in-app-purchasing-2.0.76.jar,并在他们的最新更新后切换到 com.amazon.device:amazon-appstore-sdk:3.0.2。我按照亚马逊提供的instructions迁移到AppstoreSDK。

我还按照此处所述更新了 AppTester instructions

但是,我收到身份验证异常:

D/Kiwi: AbstractCommandTask: Exception occurred while processing task: com.amazon.a.a.n.a.a.a: AUTH_TOKEN_VERIFICATION_FAILURE: null: null
    com.amazon.a.a.n.a.a.a: AUTH_TOKEN_VERIFICATION_FAILURE: null: null
        at com.amazon.a.a.n.a.b.a(AuthenticationTokenVerifier.java:94)
        at com.amazon.a.a.n.a.a.a(AbstractCommandTask.java:204)
        at com.amazon.a.a.n.a.a.a(AbstractCommandTask.java:131)
        at com.amazon.a.a.n.b.b.run(SimpleTaskPipeline.java:179)
        at android.os.Handler.handleCallback(Handler.java:873)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at android.os.Looper.loop(Looper.java:193)
        at android.os.HandlerThread.run(HandlerThread.java:65)

因此,方法的侦听器:PurchasingService.getUserData();PurchasingService.getPurchaseUpdates(true); 不会被触发。

尝试过但失败了:

  1. 更新 ProGuard 以应对 Amazon 中可能的混淆 类。
  2. 删除调试 .apk 的 V2 签名。
  3. 确保我处于沙盒模式。
  4. 从 Amazon Developer Console 更新 AppstoreAuthenticationKey.pem 文件。
  5. 从 Amazon Developer Console 更新 amazon.sdktester.json 文件。
  6. 将现有代码与亚马逊提供的 documentation 进行比较。

注意:与 in-app-purchasing-2.0.76.jar 完全相同的实现正在运行。

以上所有内容均在 Amazon Kindle Fire HD 10 平板电脑 运行 Fire OS 7.3.2.2

中进行了测试

有什么想法吗?

正如您提到的 Amazon App Tester 应用程序,我推测您在本地测试期间收到了 AUTH 错误。

如果是,请检查您最终合并的 AndroidManifest.xml 是否包含 Amazon App Tester 响应您的沙箱 API 请求所需的接收者标签:

https://developer.amazon.com/docs/in-app-purchasing/iap-implement-iap.html#responsereceiver

我在使用构建风格时遇到了同样的问题(一个用于 Google,一个用于亚马逊)并且在亚马逊清单中忽略了接收者标签。