2015-02-06 9 views
0

Поскольку я обновил свой телефон до версии Android Lollipop, мои приложения вылетают из строя, когда они пытаются проверить лицензию Google (позвоните по номеру checkAccess). Сообщение об ошибке:Сбой приложения при проверке лицензии на Lollipop

"java.lang.IllegalArgumentException: служебное намерение должно быть явным: 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» разрешение в файле манифеста, но это не имело никакого эффекта вообще.

Что может быть причиной сгенерированной ошибки?

+0

возможно дубликат [Google In-App биллинг, IllegalArgumentException: служебное намерение должно быть явным, после перехода на Android L Dev Preview] (http://stackoverflow.com/questions/24480069/google-in-app-billing-illeg alargumentexception-сервис намерения должны-быть явным) – rds

ответ

1

Это известная ошибка библиотеки лицензирования.

Сообщил решение:

Как я положил несколько часов назад на вопрос 1674, другой рабочий раствор:

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); 

Bug report with solution above.