問題タブ [sqlcipher-android]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - Android アプリで ProGuard で SqlCipher を使用しているときに NoSuchFieldError が発生する
セキュリティ上の理由から、要件の 1 つは SQLite データベースを暗号化することです。したがって、SQLCupher を使用する必要がありました。を使用して難読化を有効にしない限り、アプリケーションは期待どおりに動作しminifyEnabled true
ます。
を設定するとすぐにminifyEnabled true
、 が得られますNoSuchFieldError
。
Application サブクラスで SQLCipher を初期化しています。
例外ログは次のとおりです。
次のような多くのブログで提案されているように:
https://discuss.zetetic.net/t/native-runtime-crash-from-sqlcipher-for-android/1096
Android Proguard SqlCipher NoClassDefFoundError
Android で Proguard と SQLcipher を使用しようとすると NoClassDefFoundError が発生する
以下に示すように、proguard 構成ファイルを変更しました。
アプリの grable ファイルで debug buildType を定義する方法は次のとおりです。
Build Analzser を使用した apk 構造は次のとおりです。
このエラー/クラッシュが発生する理由について、ご意見をお聞かせください。私のプロガード構成に何か問題がありますか?
PS 私の場合、コードの難読化を有効にする必要があります。そのため、buildType で minifyEnabled を false に設定することはできません。
android - Google Play のエラー: exception.class.missing._Unknown_: TableInfo
Google Play でエラーが発生していることに気付きました。再現できませんでしたが、少数のユーザーで発生しているようです。
なぜこれが起こるのか分かりますか?私の推測では、R8 コードの縮小が原因ですが、修正方法がわかりません。
Android 4.4.3 と Room 2.3.0 で Sqlcipher を使用しています
ありがとう!