1

hereからの変更を加えて、here にあるコードも実装しました。

Android 2.2エミュレーターではすべて正常に動作しているようですが、実際のICSデバイスとJellybeanエミュレーターでは、次の(奇妙な)エラーが発生しているようです:

android.database.sqlite.SQLiteException: データベースをバージョン 300300 から 12 にダウングレードできません

データベースのバージョンが 300300 であるはずがありません。アプリケーションを削除して再インストールしようとしましたが、違いはないようです。なぜこれが起こっているのかについての手がかりはありますか?

4

1 に答える 1

1

私は少し前にこの同じ問題を抱えていました。デフォルトで先行書き込みロギング (WAL) をオンにして組み込みの SQLite ライブラリをコンパイルしたように見える特定のデバイスでのみ発生するようです。

This results in a problem whenever you try to open a database in read-only mode, as databases that have WAL enabled cannot be opened in read-only mode. The solution is to avoid using any SQLite API that tries to open the database in read-only mode, such as getReadableDatabase or the SQLiteDatabase.OPEN_READONLY flag. Instead, try use getWritableDatabase, or the SQLiteDatabase.OPEN_READWRITE flag whenever opening SQLite databases on Android.

于 2013-02-19T23:13:23.267 に答える