Android 应用内结算 invalidKeySpecException 标签错误
Android In-App Billing invalidKeySpecException wrong tag
我正在使用 IabHelper 实现 android billing purchase v3 的基本用法,当我在真实设备上测试时仍然遇到这个问题。我 运行 第一次和成功购买后我消费了产品。现在我一次又一次地收到错误。
我已经检查了我的 public 密钥(甚至使用不同的编码),所以我认为这不是问题所在。在测试静态响应后,我已经消耗了所有 android.test.*
产品。我还尝试编辑 Security.java 中的 verifyPurchase
方法,但似乎错误发生在这个调用 PublicKey key = Security.generatePublicKey(base64PublicKey);
有人成功解决了这个问题吗?
这是错误的日志:
java.lang.IllegalArgumentException: java.security.spec.InvalidKeySpecException: java.lang.RuntimeException: error:0c0890ba:ASN.1 encoding routines:asn1_check_tlen:WRONG_TAG
at com.hubsante.nutrition.utils.util.Security.generatePublicKey(Security.java:82)
at com.hubsante.nutrition.utils.util.Security.verifyPurchase(Security.java:62)
at com.hubsante.nutrition.utils.util.IabHelper.queryPurchases(IabHelper.java:972)
at com.hubsante.nutrition.utils.util.IabHelper.queryInventory(IabHelper.java:624)
at com.hubsante.nutrition.utils.util.IabHelper.run(IabHelper.java:698)
at java.lang.Thread.run(Thread.java:818)
可能 var base64publickey 长度或格式无效
似乎 public 密钥的格式不正确,我更正了它,现在可以使用了。
我正在使用 IabHelper 实现 android billing purchase v3 的基本用法,当我在真实设备上测试时仍然遇到这个问题。我 运行 第一次和成功购买后我消费了产品。现在我一次又一次地收到错误。
我已经检查了我的 public 密钥(甚至使用不同的编码),所以我认为这不是问题所在。在测试静态响应后,我已经消耗了所有 android.test.*
产品。我还尝试编辑 Security.java 中的 verifyPurchase
方法,但似乎错误发生在这个调用 PublicKey key = Security.generatePublicKey(base64PublicKey);
有人成功解决了这个问题吗?
这是错误的日志:
java.lang.IllegalArgumentException: java.security.spec.InvalidKeySpecException: java.lang.RuntimeException: error:0c0890ba:ASN.1 encoding routines:asn1_check_tlen:WRONG_TAG
at com.hubsante.nutrition.utils.util.Security.generatePublicKey(Security.java:82)
at com.hubsante.nutrition.utils.util.Security.verifyPurchase(Security.java:62)
at com.hubsante.nutrition.utils.util.IabHelper.queryPurchases(IabHelper.java:972)
at com.hubsante.nutrition.utils.util.IabHelper.queryInventory(IabHelper.java:624)
at com.hubsante.nutrition.utils.util.IabHelper.run(IabHelper.java:698)
at java.lang.Thread.run(Thread.java:818)
可能 var base64publickey 长度或格式无效
似乎 public 密钥的格式不正确,我更正了它,现在可以使用了。