sqliteを使用したAndroidアプリを開発するとき、DBの中身を確認しながらやりたいと思います。
そんなときにどういう方法でやっていますか?
エミュレータであれば、adb shellで中に入って、sqlite3でそれができます。でもめちゃくちゃ遅いです。
実機でやりたいですよね。

ところが、実機によっては必ずしもsqlite3がインストールされていないです。
なので、sqlite3を実機に入れてあげる必要があります。
その方法をご紹介します。

 1.Root化する。

 superOneClick というソフトをPCにインストールして、端末をつなぎそのソフトの「root」ボタンを押すだけ。


 2.Sqlite3 のモジュールをゲットする。

 エミュレータからモジュールをぱくります。ADTで、AVDを作成し、それを起動。DDMSからpullボタンで取り出す。 場所は、/system/xbin/ に sqlite3 という名前である。


 3.実機にとりあえずそのファイルを置く。
 /mnt/sdcard/にDDMSでputボタンで置く。


 4.Adb shell で起動する。


$ adb shell

# su -

# mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system

# mv /sdcard/sqlite3 /system/xbin/sqlite3

failed on '/sdcard/sqlite3' - Cross-device link


# cat /sdcard/sqlite3 > /system/xbin/sqlite3

# sqlite3

パーミッションディナイドされたら、下記を実行

cd /system/xbin

chmod 777 sqlite3

----------DB指定して入らないといけないので、下記で。

cd /data/data/DBを持つアプリのディレクトリ

sqlite3 MyDB.db


sqliteコマンド

.databases 接続しているDBを見る。

.tables テーブル一覧

.schema スキーマの確認