在 Lollipop 中检查许可证时应用程序崩溃
Application crashes when checking license in Lollipop
自从我将 phone 更新为 Android 的 Lollipop 版本后,我的应用程序在尝试检查 Google 许可证时崩溃(调用 checkAccess
) .错误信息是:
"java.lang.IllegalArgumentException: Service intent must be explicit: Intent {act=com.android.vending.licensing.ILicenseService".
我使用的代码是:
myLicenseChecker=new LicenseChecker(myActivity,new ServerManagedPolicy(myActivity,new AESObfuscator(salt,myActivity.getPackageName(),identificationMatériel)),myPublicKey);
myResponseAnalyzer=new MyResponseAnalyzer();
myLicenseChecker.checkAccess(myResponseAnalyzer);
我在清单文件中添加了 "com.android.vending.CHECK_LICENSE" 权限,但完全没有效果。
产生错误的原因可能是什么?
这是一个已知的许可库错误。
报告的解决方案:
As I put a few hours ago at issue 1674 , another working solution is:
Intent serviceIntent = new Intent(
new String(Base64.decode("Y29tLmFuZHJvaWQudmVuZGluZy5saWNlbnNpbmcuSUxpY2Vuc2luZ1NlcnZpY2U=")));
serviceIntent.setPackage("com.android.vending");
boolean bindResult = mContext
.bindService(
serviceIntent,
this, // ServiceConnection.
Context.BIND_AUTO_CREATE);
自从我将 phone 更新为 Android 的 Lollipop 版本后,我的应用程序在尝试检查 Google 许可证时崩溃(调用 checkAccess
) .错误信息是:
"java.lang.IllegalArgumentException: Service intent must be explicit: Intent {act=com.android.vending.licensing.ILicenseService".
我使用的代码是:
myLicenseChecker=new LicenseChecker(myActivity,new ServerManagedPolicy(myActivity,new AESObfuscator(salt,myActivity.getPackageName(),identificationMatériel)),myPublicKey);
myResponseAnalyzer=new MyResponseAnalyzer();
myLicenseChecker.checkAccess(myResponseAnalyzer);
我在清单文件中添加了 "com.android.vending.CHECK_LICENSE" 权限,但完全没有效果。
产生错误的原因可能是什么?
这是一个已知的许可库错误。
报告的解决方案:
As I put a few hours ago at issue 1674 , another working solution is:
Intent serviceIntent = new Intent( new String(Base64.decode("Y29tLmFuZHJvaWQudmVuZGluZy5saWNlbnNpbmcuSUxpY2Vuc2luZ1NlcnZpY2U="))); serviceIntent.setPackage("com.android.vending"); boolean bindResult = mContext .bindService( serviceIntent, this, // ServiceConnection. Context.BIND_AUTO_CREATE);