Расположение Proguarding Play Services - PullRequest
0 голосов
/ 24 мая 2018

Я использую следующее в моем файле Gradle

implementation 'com.google.android.gms:play-services-location:11.6.0'

И, основываясь на следующей статье, в моем файле Proguard у меня есть: http://www.androiddocs.com/google/play-services/setup.html

-keep class * extends java.util.ListResourceBundle {
    protected Object[][] getContents();
}

-keep public class com.google.android.gms.common.internal.safeparcel.SafeParcelable {
    public static final *** NULL;
}

-keepnames @com.google.android.gms.common.annotation.KeepName class *
-keepclassmembernames class * {
    @com.google.android.gms.common.annotation.KeepName *;
}

-keepnames class * implements android.os.Parcelable {
    public static final ** CREATOR;
}

Тем не менее, я думаю, что это было разработано для более старой версии 6.5, а не 11.6.Я также читал, что в более поздних версиях (12 и 15?) Добавляются настройки proguard, но я не могу заставить их успешно встраиваться в APK.

Я недавно обновился до Android Studio 3.1.2.И я не могу отследить, какой именно класс является причиной проблемы, поскольку я понятия не имею, где находятся «журналы», на которые он ссылается.Или, если я видел их, и они не содержат информацию.

Это определенно эта библиотека.Как опуская это я могу построить хорошо.

enter image description here

Я также добавил следующее, но не повезло:

-keep class com.google.android.gms.location.** { *; }
-keep class com.google.android.gms.internal.** { *; }
-keep class com.google.android.gms.** { *; }
-keep class com.google.android.** { *; }
-keep class com.google.** { *; }
-keep class com.google.android.gms.tasks.** { *; }
-keep class com.google.android.gms.common.** { *; }
-keep class com.google.android.gms.common.api.** { *; }
-dontwarn com.google.android
...