android -защита, предотвращающая установку приложения - PullRequest
0 голосов
/ 23 марта 2020

когда я собираю и делаю apk-файл моего приложения, он не устанавливается на телефоне, он просто говорит, что приложение не установлено, и если я переключаю minifyEnabled в false, чтобы отключить proguard, а затем сделать apk, который он устанавливает, и работает.

это мой gradle:

dependencies {
// Recommended: Add the Firebase SDK for Google Analytics.
implementation 'com.google.firebase:firebase-analytics:17.2.3'
implementation 'com.google.firebase:firebase-crashlytics:17.0.0-beta01'

implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"

implementation 'com.android.support:multidex:1.0.3'

implementation 'androidx.appcompat:appcompat:1.2.0-alpha01'
implementation 'androidx.recyclerview:recyclerview:1.2.0-alpha01'
implementation 'androidx.cardview:cardview:1.0.0-alpha01'
implementation 'com.google.android.material:material:1.2.0-alpha01'
implementation 'androidx.constraintlayout:constraintlayout:2.0.0-beta4'

implementation('cn.trinea.android.view.autoscrollviewpager:android-auto-scroll-view-pager:1.1.2') {
    exclude module: 'support-v4'
}
implementation 'com.github.bumptech.glide:glide:4.9.0'
implementation 'com.github.shell-software:fab:1.1.2'
implementation 'com.alirezaafkar:sundatepicker:2.0.8'
implementation 'me.dm7.barcodescanner:zxing:1.9'
implementation 'com.google.android.gms:play-services-maps:17.0.0'
implementation 'com.google.android.gms:play-services-gcm:17.0.0'
implementation 'com.google.android.gms:play-services-location:17.0.0'

implementation 'com.google.firebase:firebase-core:17.2.3'
implementation 'com.google.firebase:firebase-messaging:20.1.2'

implementation 'com.nineoldandroids:library:2.4.0'
implementation 'com.daimajia.slider:library:1.1.5@aar'
implementation 'com.squareup.picasso:picasso:2.5.2'

implementation 'com.github.MikeOrtiz:TouchImageView:2.2.0' // Android X

}

это мой proguard:

    -keep class org.apache.http.** { *; }
-keep class org.apache.commons.codec.** { *; }
-keep class org.apache.commons.logging.** { *; }
-keep class android.net.compatibility.** { *; }
-keep class android.net.http.** { *; }
-keep class javax.annotation.**{*;}
-dontwarn javax.annotation.**
-dontwarn org.apache**

-keep public class android.net.http.SslError
-keep public class android.webkit.WebViewClient
-dontwarn android.webkit.WebView
-dontwarn android.net.http.SslError
-dontwarn android.webkit.WebViewClient

-keep class cn.trinea.android.** { *; }
-keepclassmembers class cn.trinea.android.** { *; }
-dontwarn cn.trinea.android.**

-dontwarn com.squareup.picasso.**

-keep class com.parse.**{*;}
-dontwarn com.parse.**
-keep class org.slf4j.**{*;}
-assumenosideeffects class android.util.Log {
                            public static boolean isLoggable(java.lang.String, int);
                            public static int v(...);
                            public static int i(...);
                            public static int w(...);
                            public static int d(...);
                            public static int e(...);
                        }

-keep class cn.trinea.android.** { *; }
-keepclassmembers class cn.trinea.android.** { *; }
-dontwarn cn.trinea.android.**
-dontwarn org.slf4j.**

-keep public class com.google.android.gms.* { public *; }
-keep class com.google.android.gms.* { *; }
-keep class com.google.* {  *; }
-dontwarn com.google.**

-keep class com.crashlytics. { *; }
-dontwarn com.crashlytics.
-keep class io.fabric.sdk.android. { *; }
-dontwarn io.fabric.sdk.android.
-keep class com.crashlytics.android. { *; }
-dontwarn com.crashlytics.android.

-keepattributes *Annotation*
-keepattributes SourceFile,LineNumberTable
-keep public class * extends java.lang.Exception
-keep class com.crashlytics.** { *; }
-dontwarn com.crashlytics.**

-keep class com.analytics.** { *; }
-dontwarn com.analytics.**
-keep class com.crashlytics.** { *; }
-dontwarn com.crashlytics.**

-keep class com.firebase.** { *; }
-keep class org.apache.** { *; }

есть ли способ сделать android Студия возвращает ошибки перед сборкой apk или любым другим способом, который я могу выяснить, почему он не устанавливается при включенном proguard?

1 Ответ

0 голосов
/ 23 марта 2020

У меня тоже была такая же проблема. Я генерировал неподписанный APK-файл приложения (без ключа и сертификатов). Однако, когда я сгенерировал подписанный APK, все работало нормально. Вы можете попробовать это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...