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モードメール通知 | このブログの読者になる | 更新情報をチェックする

2012年01月21日

spモードメール通知 5300.02

spモードメール通知 5300.02 をリリースしました。

今回の修正はOptimous LTE対策のみです。

Optimous LTEではspモードメールのデータベースを開くところで強制終了していました。
オープンフラグとしてデフォルト値を入れていて、それは読み書き可能フラグでした。
本アプリは書き込みはしないので、読み込みフラグのみに変更しました。

これでもエラーが発生する場合は強制終了ではなく、エラーの旨を表示するようにしました。
ただ、どちらにしろ使えないことには変わりないのであまり意味がないかもしれません。

posted by tech4u at 18:51| Comment(2) | spモードメール通知 | このブログの読者になる | 更新情報をチェックする

2012年01月20日

spモードメール通知 5300.01

spモードメール通知 5300.01をリリースいたしました。

前回のリリース(5200.01)はブログを書きませんでしたが、本体バージョンアップで強制終了してしまう不具合に急いで対応したのでコメントを書く暇がなく、その後は放置でした・・・。

今回の修正は以下の通りです。
・通知時、アプリ名だったところをフォルダ名に変更
・容量表示画面の収集処理を別スレッド化
・タスクキル対策コード修正
・非root端末表示メッセージ微修正

以下、補足を書きます。

・通知時、アプリ名だったところをフォルダ名に変更
これは受信直後のステータスバーにペロっとでる文字列の変更です。(ペロンと引き出してきて見える部分の変更はありません。)
リリースに間が開いたので、見た目ですぐわかる変更かつ実装が簡単なものを仕込んでみました。
便利かなと思ったのですが、メールを待ちわびているときは先に本体が未受信を出して新着を出して・・・の時点で本アプリの通知を待たずにユーザーが開いちゃうだろうし、見てないときは見えないだろうから、あまり意味ないかもしれません。

・容量表示画面の収集処理を別スレッド化
メニューから容量確認を選択すると、容量調査中の間ブラックアウトしていたので、調査中はグルグルダイアログを表示するようにしました。
設定画面でメニューボタンが効くことに気付いていない方もいらっしゃるかもしれません。
そこにあるのが特に必要のない機能だったりバグっぽい動きをする機能だったりなので特に説明をしていませんでした。
メニューからの機能は別のエントリで説明することにします。

・タスクキル対策コード修正
先日書いた、APP_LINK_NEW_MESSAGE の件です。ポーリングループが不要になると思っていたのですが、spモードメールで未読を消化した時に本アプリの通知を消す動作があり、これのためにポーリングループが残っています。
このため、省電力にはあまりつながっていません。
通知を消した後、ポーリングループを抜ける処理を書くとかなり省電力になると思われるのですが、下手にいじるとメモリリークなどしそうな気がしたので後でじっくり対処します。

・非root端末表示メッセージ微修正
「root化ってどうやるんですか」というメールがたまに来るので、「root化についての質問は受け付けません。」と追記しました。
「自己責任で」という言葉で通じると思っていたのですが、より具体的なメッセージにしました。
マーケットの説明で、「覗き見」という言葉をカギ括弧つきで強調して書いてますが、ダウンロード数が減ることを覚悟の上でこのようなショッキングな説明にしています。これはroot化のリスクを強調するためです。
こんなことを書くと本アプリで情報流出してんじゃないかと思われるかもしれませんが、私はそんなことはしません。「覗き見」した情報は鳴り分け通知の目的のみに使用し、それ以外には使用しておりません。
ここで書いても説得力がありませんし、証明するなら第三者がリバースエンジニアリングするしかなく非現実的ですが。

最後にもう一つ、先日書いた、意味のない try catch を外しました。Optimous LTE での強制終了の原因究明ができることを願っています。
posted by tech4u at 22:42| Comment(0) | spモードメール通知 | このブログの読者になる | 更新情報をチェックする
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。