Как решить java.lang.VerifyError в Android

Я получаю VerifyError для вызова метода paticular class Utility, сначала он работал правильно, и вдруг начал выдавать ошибку времени выполнения, он отлично работает с леденцами API и более высоким API. Вот мои журналы ошибок.

06-08 12:25:07.655: E/AndroidRuntime(18117): FATAL EXCEPTION: main
06-08 12:25:07.655: E/AndroidRuntime(18117): java.lang.VerifyError: com/package/projectname/utility/Utility
06-08 12:25:07.655: E/AndroidRuntime(18117):  at com.package.projectname.AppDelegate.onCreate(AppDelegate.java:36)
06-08 12:25:07.655: E/AndroidRuntime(18117):  at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1017)
06-08 12:25:07.655: E/AndroidRuntime(18117):  at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4575)
06-08 12:25:07.655: E/AndroidRuntime(18117):  at android.app.ActivityThread.access$1400(ActivityThread.java:153)
06-08 12:25:07.655: E/AndroidRuntime(18117):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1346)
06-08 12:25:07.655: E/AndroidRuntime(18117):  at android.os.Handler.dispatchMessage(Handler.java:99)
06-08 12:25:07.655: E/AndroidRuntime(18117):  at android.os.Looper.loop(Looper.java:176)
06-08 12:25:07.655: E/AndroidRuntime(18117):  at android.app.ActivityThread.main(ActivityThread.java:5302)
06-08 12:25:07.655: E/AndroidRuntime(18117):  at java.lang.reflect.Method.invokeNative(Native Method)
06-08 12:25:07.655: E/AndroidRuntime(18117):  at java.lang.reflect.Method.invoke(Method.java:511)
06-08 12:25:07.655: E/AndroidRuntime(18117):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1102)
06-08 12:25:07.655: E/AndroidRuntime(18117):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:869)
06-08 12:25:07.655: E/AndroidRuntime(18117):  at dalvik.system.NativeStart.main(Native Method)

person Giteeka Sawlani    schedule 08.06.2016    source источник
comment
опубликуйте свой класс Utility и метод, который дает VerifyError   -  person Manish Jain    schedule 08.06.2016
comment
посмотрите, перечислены ли случаи здесь охватывает вашу ситуацию.   -  person Akeshwar Jha    schedule 08.06.2016
comment
@manish jain для всех методов выдает ошибку, например, журнал печати   -  person Giteeka Sawlani    schedule 08.06.2016
comment
какое у вас приложение buildToolsVersion?   -  person Manish Jain    schedule 08.06.2016
comment
@manish джайн 23 Marhsmallow   -  person Giteeka Sawlani    schedule 08.06.2016
comment
@GiteekaSawlani, проверьте это   -  person Manish Jain    schedule 08.06.2016
comment
на самом деле это происходило по другой причине, класс Utility обнаружил код отпечатка пальца, поэтому он не компилировался должным образом, спасибо за помощь:   -  person Giteeka Sawlani    schedule 08.06.2016


Ответы (1)


Я решил эту ошибку, поместив библиотеку gms отдельно:

До того, как я использовал:

compile 'com.google.android.gms:play-services:8.1.0'

Эта строка выше позаботится о GCM и всех библиотеках, связанных с Google. Но эта одна строка вызывает ошибку верификатора. Помимо ошибки верификатора вы можете увидеть журнал, связанный с gms.

После этого я добавил отдельно вот так, чтобы исправить эту проблему:

 compile 'com.google.android.gms:play-services-location:8.1.0'
 compile 'com.google.android.gms:play-services-base:8.1.0'
 compile 'com.google.android.gms:play-services-analytics:8.1.0'
 compile 'com.google.android.gms:play-services-maps:8.1.0'

 compile "com.google.android.gms:play-services-gcm:8.1.0'    // for gcm push notification

а также Проверьте это

person Steve    schedule 04.10.2016