2012年01月29日

Optimus LTE L-01D での動作

spモードメール通知が Optimus LTE L-01D で動かないという報告があります。

手元に実機が無いなか、いろいろ想像して対策してみたものの、やはり動きませんでした。
バージョン5300.02にて強制終了ではなく、エラーメッセージを表示するようにするのが精々でした。

spモードメール通知は、マーケットの説明にもある通り、「spモードメールのデータを『覗き見』」しています。
具体的には、
/data/data/jp.co.nttdocomo.carriermail/databases/CarrierMail
というファイルです。

これはSQLiteのデーターベースになっていて、各々のメールの未読フラグやフォルダIDなどが格納されています。
spモードメール通知はこれらを読み取り、必要な通知を出しています。

Androidでは他アプリのファイルは見れないことになっています。そのため root化して無理やり覗き見しているわけです。

ところが、Optimus LTE L-01D ではroot化端末でも何故かデーターベースを覗き見できません・・・。


Optimus LTE L-01D をお持ちで、root化済みでコマンドラインが得意な方に試していただきたいことがあります。
やることはデーターベースがコピーできるかどうか。

例えばこんな感じで。

$ su
# cp /data/data/jp.co.nttdocomo.carriermail/databases/CarrierMail /sdcard/CarrierMail.1
# chmod 664 /data/data/jp.co.nttdocomo.carriermail/databases/CarrierMail
# exit
$ cp /data/data/jp.co.nttdocomo.carriermail/databases/CarrierMail /sdcard/CarrierMail.2
$ ls -l /sdcard/CarrierMail*

通常のroot化端末ではこれらが正常に動きます。(正常とはroot化の立場からみて正常であって、本来のAndroid OSの立場から見たらコピーできるのは異常ですが)

Optimus LTE L-01D でも正常に動いたら・・・ 別のテストを考えなければなりません。

コピーできない場合は、/data/data 以下にある他アプリのファイルでも同じようなコピーを試してみてください。
他アプリのファイルもコピーできない場合は、完全にroot化できていないことになります。

もし、/data/data/jp.co.nttdocomo.carriermail 配下だけダメで、他アプリ配下ならコピーできるとしたら・・・ドコモプロテクトが掛っていることになります!

検証報告お待ちしております!


posted by tech4u at 10:59| Comment(7) | spモードメール通知 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
# cp /data/data/jp.co.nttdocomo.carriermail/databases/CarrierMail /sdcard/CarrierMail.1

->コピーできました。
 ただし、cpコマンドがなかったのでbusyboxで代用です。

# chmod 664 /data/data/jp.co.nttdocomo.carriermail/databases/CarrierMail

->もとから664です。

$ cp /data/data/jp.co.nttdocomo.carriermail/databases/CarrierMail /sdcard/CarrierMail.2

->コピーできました。

このアプリを動かしたくてroot化したので、どうかよろしくお願いします。
Posted by seki at 2012年01月29日 14:25
検証ありがとうございます。
コピーはできるんですね・・・。

これを受けて、次の検証プログラムを作ってみました。
https://tech4you.up.seesaa.net/image/spmmNotifier.5300.02LG.apk

設定画面が出てきたら、対処可能です。
今まで通りのエラーメッセージ画面がでてきたら、どうしましょう・・・

このプログラムでは /data/data/jp.co.nttdocomo.carriermail/databases/CarrierMail を /data/data/jp.tech4u.spmmNotifier/databases/ 配下にコピーしてからデーターベースオープンしています。
起動時だけこの処理を入れたので、新着メールが来た後の動作は不明です(単に無視するか、強制終了かどちらかだと思います)
Posted by tech4u at 2012年01月29日 15:36
設定画面、表示されました。
Posted by seki at 2012年01月29日 17:29
動くんですね!
技術的にできることが分かりました!

コピーを仕込むところが複数あるのでちょっと時間がかかると思いますが、組み込みまでしばらくお待ちください。
Posted by tech4u at 2012年01月29日 19:45
これで動かないとなると根が深そうですね・・・。

まず確認したいところを。

メール受信するたびに /data/data/jp.co.nttdocomo.carriermail/databases/CarrierMail を /data/data/jp.tech4u.spmmNotifier/databases/CarrierMail にコピーするわけなんですが、それぞれのタイムスタンプはちゃんと変わってますかね?
Posted by tech4u at 2012年01月31日 18:22
なかなか難しいみたいですね・・・

バージョン5300.03インストールして起動、設定出来ますが、通知はされません。

タイムスタンプですが
/data/data/jp.co.nttdocomo.carriermail/databases/CarrierMail
はメール受信しても変化ありません。
数日前の日付になっているので変化はしているみたいですが、どのタイミングで変化しているのかは不明です。

/data/data/jp.co.nttdocomo.carriermail/databases/CarrierMail-shm
/data/data/jp.co.nttdocomo.carriermail/databases/CarrierMail-wal
の2つは受信時や既読時や削除等と連動して変化します。

私もこのアプリを使いたいので、どうにか対応お願いします。
Posted by ssm at 2012年03月25日 20:20
ご報告いただきありがとうございます。

http://blog.tech4u.jp/article/249402471.html で、shm と wal があることは分かっているのですが、これ以上の調査はやはり実機が手元にないとツライです。

拡張子なし,shm,wal の3ファイルを送っていただけたら何とかなるかもしれませんが、個人情報のカタマリですから、ねぇ。
しかも、それでも対応できない可能性の方が高いです・・・。
Posted by tech4u at 2012年03月26日 02:21
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。