かずきのBlog@hatena

すきな言語は C# + XAML の組み合わせ。Azure Functions も好き。最近は Go 言語勉強中。日本マイクロソフトで働いていますが、ここに書いていることは個人的なメモなので会社の公式見解ではありません。

Azure Mobile Appsのローカル同期機能で作成されるDBの中身を見てみよう(Android版)

さて、ローカル同期したAndroidのデータをひっこぬいてBrowser for SQLIteで中身を見てみたいと思います。 今回は、エミュレータで実行してる前提でコマンドを書いています。

まずadbのshellでつなぎます。

adb -e shell

アプリパッケージ名を調べます。 アプリパッケージ名はVisual StudioでDroidプロジェクトのプロパティを開いてAndroid ManifestのタブにあるPackage nameがそれにあたります。仮にここではcom.xamarin.sample.sample1030という前提で話を進めます。

run-asコマンドで、アプリのフォルダに入り込みます。

run-as com.xamarin.sample.sample1030

PersonalフォルダのパスをMobileServiceSQLiteStoreに渡していたら、filesフォルダにDBができているはずです。

cd files
ls

localstore.dbという名前で今回はDBを作ったのでこれを取得します。 いったん適当なフォルダに避難させます(ここではダウンロードフォルダ)

cp localstore.db /sdcard/Download

exitでadbを抜けてpullしてきます

adb pull /sdcard/Download/localstore.db

そうすると、カレントディレクトリにlocalstore.dbができます。 あとはDB Browser for SQLIteで除くと中身が以下のように見えます。

f:id:okazuki:20161030135719p:plain