3

Android のデフォルトの sqlite ビルドを、 rtree機能が有効になっている新しいビルドに置き換えたいと思います。それを達成するにはJavaラッパーを使用する必要があるようですが、Androidと互換性があるとわかったのはsqlite4java だけでした。私は標準に固執することを好みます。残念ながら、jdbc は dalvikvm (Android VM) ではサポートされておらず、ネイティブの android.database.sqlite は sqlite の rtree 無効ビルドで動作することがわかりました。

現在、Android用にコンパイルされた新しい.so sqlite rtree対応ライブラリがありますが、sqlite4javaのようなサードパーティのラッパーを使用せずにAndroidネイティブのものを置き換えたいと考えています。何か案は?Android sdk から android.database.sqlite パッケージをダウンロードし、jar を構築して、アプリケーション コンテキスト内の .so ロードのみを置き換えることを考えていました。それが最善のアプローチですか?

4

1 に答える 1

5

Android sdk から android.database.sqlite パッケージをダウンロードし、jar を構築して、アプリケーション コンテキスト内の .so ロードのみを置き換えることを考えていました。それが最善のアプローチですか?

必要なすべてのクラスを独自のパッケージにリファクタリングする意思がある限り、それがおそらく唯一の方法です。たとえば、それが Android 用 SQLCipher の機能です。彼らは、SQLite の独自の SQLCipher 対応ビルドを使用するために、約 37 個のクラスを複製しandroid.database、それらを変更しました。android.database.sqlite

于 2012-12-19T16:31:06.293 に答える