android / android/security-samples
What's the ProGuard config?
- Lingua principale
- Kotlin
- Stelle
- 1k
- Fork
- 450
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
Set "minifyEnabled" to **true**(no problem if set false) before running release apk, there would be a FC:
```
2020-05-18 13:10:21.228 1992-1992/com.my.app E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.my.app, PID: 1992
java.lang.ExceptionInInitializerError
at androidx.security.crypto.EncryptedSharedPreferences$PrefKeyEncryptionScheme.(:146)
at c.c.d.f.i.g.(:35)
at c.c.d.f.i.g.a(:110)
at c.c.d.f.f.l(:148)
at c.c.d.f.f.m(:120)
at c.c.d.f.f.a(:63)
at com.my.app.MyApp$a.a(:69)
at d.a.a.onCreate(:181)
at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1190)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6609)
at android.app.ActivityThread.access$1400(ActivityThread.java:229)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1892)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loop(Looper.java:228)
at android.app.ActivityThread.main(ActivityThread.java:7589)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:539)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:953)
Caused by: java.lang.RuntimeException: Field keySize_ for c.b.c.a.g.ja not found. Known fields are [public int c.b.c.a.g.ja.g, public static final c.b.c.a.g.ja c.b.c.a.g.ja.e, public static volatile c.b.e.ea c.b.c.a.g.ja.f]
at c.b.e.Y.a(:608)
at c.b.e.Y.a(:502)
at c.b.e.Y.a(:221)
at c.b.e.N.a(:85)
at c.b.e.N.a(:71)
at c.b.e.ga.a(:93)
at c.b.e.ga.a(:107)
at com.google.protobuf.GeneratedMessageLite.l(:171)
at com.google.protobuf.GeneratedMessageLite$a.d(:391)
at com.google.protobuf.GeneratedMessageLite$a.c(:399)
at c.b.c.a.c.e.a(:45)
at c.b.c.a.c.e.(:38)
at androidx.security.crypto.EncryptedSharedPreferences$PrefKeyEncryptionScheme.(:146)
at c.c.d.f.i.g.(:35)
at c.c.d.f.i.g.a(:110)
at c.c.d.f.f.l(:148)
at c.c.d.f.f.m(:120)
at c.c.d.f.f.a(:63)
at com.my.app.MyApp$a.a(:69)
at d.a.a.onCreate(:181)
at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1190)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6609)
at android.app.ActivityThread.access$1400(ActivityThread.java:229)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1892)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loop(Looper.java:228)
at android.app.ActivityThread.main(ActivityThread.java:7589)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:539)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:953)
```
I tried:
```
-keep class androidx.security.crypto.** {*;}
-keep public enum androidx.security.crypto.EncryptedSharedPreferences$** {
**[] $VALUES;
public *;
}
```
but not working.
Guida per i contributori
Apri la guida per i contributori
Direzione di ricerca
Non è indicato alcun file sorgente né alcun test. Inizia ispezionando la configurazione del release APK con minifyEnabled=true e lo stack trace AndroidX Security/Protobuf fornito, quindi confronta le regole keep esistenti; il lavoro è completato quando il release APK si avvia senza questo crash.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- android
- Ambito
- build-system, mobile
- Tipo di issue
- Bug
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Ferma
- Chiarezza
- Da chiarire
- Idoneità per principianti
- 30/100