Android用のSQLCipherを使用する必要があります...すでにSQLiteを使用してアプリを作成しており、SQLCipherに変換したいだけです。
問題は、SQLCipherについて何も知らないということです。
私はこのリンクでそれについて読みました: http://sqlcipher.net/sqlcipher-for-Android/
しかし、私はまだはっきりしていません。 Androidチュートリアルでは、すべてが絶対的な基本から簡単な方法で教えられる、いくつかの基本的なsqlcipherを提供できるかどうか疑問に思いました。
ありがとう!
AndroidのSQL暗号を適切に使用するには、外部ライブラリを使用し、DBと対話するコードの一部を変更する必要があります。
これらは最初にプロジェクトに追加する必要があります(libsフォルダー内)。これらを取得するには、ここを参照してください: http://sqlcipher.net/sqlcipher-for-Android/
次に、icudt4dl.Zipファイルをアセットフォルダーに追加する必要があります。このZipにはSQL暗号ライブラリが付属しています。
プロジェクトを右クリックし、プロパティに移動してからJavaビルドパスを作成し、commons-codec.jar、guava-r09.jar、sqlcipher.jarなどのライブラリを含めます。これが完了したら、ビルドを実行します。掃除。
次に、アプリ内で、Android.database.sqliteをインポートする代わりに、importnet.sqlcipher.databaseをインポートします。
DBと相互作用するコードを変更します。例:
SQLiteDatabase.loadLibs(context);
文字列dbPath = this.getDatabasePath( "dbname.db")。getPath();
SQLiteDatabase db = SQLiteDatabase.openOrCreateDatabase(dbPath、 "dbPassword"、null);
データベースが暗号化されていることを確認し、EclipseのDDMSパースペクティブに移動し、[ファイルエクスプローラー]タブをクリックして、data/data /に移動し、.dbファイルをクリックして[デバイスファイルの取得]を選択し、デスクトップに保存して、テキストで開きます編集者。データベースに挿入しているプレーンテキストの値を探します。それでも読み取れる場合は、問題が発生しています。
SQL Cipherを実装する前に、いくつかのSQLiteチュートリアルを確認することもお勧めします。良いものがここに記載されています: Android sqliteデータベース-チュートリアルがメモ帳になっているので、どこから始めればよいですか?
更新
この回答は現在古く、Eclipseは実質的にAndroid開発用に非推奨です。最近Android Studio for Android 5 +6そしてこれらは私が従ったステップです。
Android Studioでは、SQLCipherを依存関係としてビルドファイルに含めることができます。ビルドgradleの依存関係を更新して、次の行を含めます。
dependencies{
compile 'net.zetetic:Android-database-sqlcipher:3.5.4@aar'
}
ここでバージョンを最新に保つことができます: https://mvnrepository.com/artifact/net.zetetic/Android-database-sqlcipher
LibフォルダーとassetフォルダーにあるSQLCipherファイルを削除しない限り、アプリはビルドされませんでしたが、その後は期待どおりに機能しました。これらの変更を行ったら、ビルド/クリーンを実行して、それが機能するかどうかを確認します。
コードを変更した場合の上記と同じ手順は引き続き有効です。
ZeteticのEclipseチュートリアル に従って.soライブラリを自分で追加することはできますが、AndroidStudio。Gradleの依存関係を追加するだけで、実際に追加する必要はありません。お気に入り compile net.zetetic:Android-database-sqlcipher:3.3.1-2@aar
そしてあなたは行く準備ができています!