SQLite
 sql >> Base de données >  >> RDS >> SQLite

Obtenir NoClassDefFoundError en essayant d'utiliser Proguard et SQLcipher dans Android

Je pense que la classe a été supprimée par l'outil Proguard Shrinking.

Essayez d'ajouter le paramètre suivant

-dontshrink

et dis moi si ça marche.

J'ai aussi vu qu'il manquait un attribut dans une classe protégée de Sqlcipher :

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

Pouvez-vous également essayer de garder les classes protégées de Sqlcipher ?

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

P.S Est-il régulier que vous ayez l'option -dontobfuscate dans votre configuration ? Votre application ne sera pas masquée si vous la conservez.