sql >> Databasteknik >  >> RDS >> SQLite

Får NoClassDefFoundError när jag försöker använda Proguard och SQLcipher i Android

Jag tror att klassen togs bort av verktyget Proguard Shrinking.

Försök att lägga till följande parameter

-dontshrink

och berätta om det fungerar.

Jag såg också att ett attribut saknas i en skyddad klass av Sqlcipher:

: E/AndroidRuntime(18993): Caused by: java.lang.NoSuchFieldError: no field with name='nHandle' signature='I' in class Lnet/sqlcipher/database/SQLiteCompiledSql;

Kan du också försöka behålla skyddade klasser från Sqlcipher?

-keep class net.sqlcipher.** {
    *;
}

P.S. Är det vanligt att du har alternativet -dontobfuscate i din konfiguration? Din ansökan kommer inte att fördunklas om du behåller den.



  1. Byt Oracle-port från port 8080

  2. Operand bör innehålla 1 kolumn - MySQL NOT IN

  3. problem med att använda Oracle-parametrar i SELECT IN

  4. MySQL skapa vy, ersätt vy och släpp vy uttalanden med exempel