あんにんにっき。

日々思ったことや、おこったことを記録するブログ。要するに日記。

SMS.db

 iPhoneのSMSを外部に書き出すツールに、SMS2Mail(要JailBreak)というのがあるのでいれてみたのだけれども、ところどころ取得出来ていないものがある。どうも、SMSは大丈夫なのだけど、MMSはダメっぽい?
 はて、どのような形でデータを格納しているのだろう?という事でちょっと調べてみた。

 SMS/MMSアプリは、データをSMS.dbというsqliteのデータファイルで保持している様子。とりあえず、PCに吸いだして中身を見てみた。

メール内容を保持しているテーブル1→message

 これは、SMSの本文データを保持しているテーブルの様子。
 他にも、差出人や受信日付、既読管理とかもここでやっている様子。
 textという項目にメールの本文が格納されているようなのだが、これがたまに空のレコードがある。おそらく、これがSMS2Mailでうまく取れないデータなのだろう。

メール内容を保存しているテーブル2→msg_pieces

 MMSや写真を添付したファイルなどのマルチパートなメールは、こちらにデータが格納されるっぽい。
 各パートが1レコードに分割されて入っている様子。
 このテーブルのmessage_id と messageテーブルのrow_id をouter join すればひと通りの内容を確認することは可能な感じ。


 jpegとかは、たぶんバイナリで格納されているはず。ファイルに取り出す方法がよくわからんので、とりあえず放置。

 そんな事しらべたりしている感じ。