Мое приложение полностью готово к развертыванию и использует множество библиотек. Я хочу минимизировать код с помощью Proguard, а также удалить неиспользуемые классы и ресурсы, но при использовании proguard я получаю ошибку времени выполнения
java.lang.RuntimeException: Unable to create application com.rig.onblick.App: java.lang.NullPointerException: Attempt to invoke virtual method 'int java.lang.String.hashCode()' on a null object reference
Я просмотрел множество руководств, но писать конфигурацию proguard кажется слишком сложным, потому что мне нужно написать множество правил, чтобы убедиться, что мое приложение будет работать идеально. Я никогда не использовал proguard в таких крупных проектах. Может ли кто-нибудь сказать мне минимальную конфигурацию, которая гарантирует, что мой код будет минимизирован и не будет возникать ошибок во время выполнения.
Моя текущая конфигурация показана ниже.
-dontwarn com.witt.mspapp.**
-keep class com.github.mikephil.** { *; }
-dontwarn com.github.mikephil.**
-keep class com.github.mikephil.** { *; }
-dontwarn org.apache.**
-keep class com.google.gms.** { *; }
-dontwarn com.google.gms.**
-keep class com.viewpagerindicator.** { *; }
-dontwarn com.viewpagerindicator.**
-keep class org.jivesoftware.smackx.** { *; }
-dontwarn org.jivesoftware.smackx.**
Я тестирую в отладочной среде. и моя конфигурация градиента показана ниже
debug {
minifyEnabled true
shrinkResources true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
Подробнее здесь: https://stackoverflow.com/questions/443 ... -to-minify