周回遅れの日記

はてなダイアリーから移転

SH-07Dでspモードメールのマイアドレス確認

ドコモのスマートフォン、SH-07Dで、spモードメールのマイアドレス確認を行います。
パケット通信料の課金がなるべく生じないようにします。
いずれSH-07Dにもドコモメールが降りてきて、spモードメールなんて使われなくなって、こんな面倒なことしなくても良くなるはずですが、賞味期限が切れないうちに記事にしておきます。予定通り14年1月にドコモメールが降りてきたらこの記事は賞味期限切れなので。我ながらちょっといやらしい。

マイアドレス更新について

3Gのデータ通信をなるべく使わず、wi-fi接続でspモードメールアプリを使いたい、という場合、いろいろ制約があります。
まず、spモードの契約のあるドコモの回線のSIMを挿しておく必要があります。
そして、wi-fi接続を切って、そのspモードの契約のあるドコモ回線のデータ通信を有効にして「マイアドレス情報更新」を行わなくてはなりません。Wi-fiが有効なままでは「マイアドレス情報更新」はできない仕組みになっています。
「マイアドレス情報更新」は一回実行すればしばらくの間は実行せずに済みますが、端末を初期化したりエラーでデータが飛んだりしたら、マイアドレス情報は消えてしまいます。またマイアドレス更新から90日が経過した場合も、マイアドレス情報は消えてしまいます。つまり、少なくとも3ヶ月に一回はマイアドレス更新を行わなくてはならない、ということです。

「マイアドレス情報の更新」自体は、パケット通信料が課金されません。
また、spモードセンターに接続する通信は、「メール使いホーダイ」の対象でもあります。
ただし、スマートフォンでは常時多数のアプリが通信を行っているため、Wi-fiを切って、モバイルネットワークのデータ通信で通信を行わせるようにすると、spモードメールアプリ以外の多数のアプリがデータ通信経由で通信を行ってしまい、結果として予想外に多額の課金が行われてしまう可能性があります。

FWアプリについて

そこで、ファイアウォールを使ってspモードメール以外のアプリの通信をブロックします。
以前、P-01Dでマイアドレス確認を行ったときは、DroidWallというアプリを利用しました。
しかし、DroidWallはroot権限が必要で、SH-07Dでは私はrootを取れません。Sharpは徹底してroot取らせてくれないそうですね。

そこで、root権限無しで使えるNoRootファイアウォールというアプリを利用します。以前から別のタブレット、Nexus7でも使っているアプリです。今のところKitKat(4.4)で使えないとかLTEでは使えないとかいった問題があるようですが、Android 4.0.4でFOMA端末のSH-07Dは該当しません。

FWアプリの簡単な使い方

まず、NoRootファイアウォールが動作していることを確認します。

NoRootファイアウォールをダウンロードしてインストール。
アプリを起動して、「グローバルフィルタ」タブを開きます。
試しに新しいプレフィルタを作ってみて、アプリが本当に動作するのかどうか確認してみます。
「+新しいプレフィルタ」をタップします。

上の扇マークはWifi、四本縦棒はモバイルネットワークのデータ通信、チェックボックスを一回タップすると緑色のレが付いて「通信許可」、もう一回タップすると赤い×がついて「通信不許可」になります。両方とも赤い×にします。
「アドレス」と「ポート」に「*」を入力して、「OK」をタップします。
これは、Wi-fiとモバイルネットワークのデータ通信の両方で、全てのアプリについて、全てのアドレスとの間で、全てのポートを使った通信をブロックするフィルタです。
「ホーム」タブで、「スタート」を押してNoRootFirewallを有効にします。

その後、試しに、いくつか適当なアプリを選んで通信をさせてみましょう。たとえば、Gmailアプリを開いて更新を行っても、通信がブロックされているので、いつまで経ってもメールの更新が終わらないはずです。
テストが終わったら、プレフィルタは不要なので削除します。
これでファイアウォールが動作していることが分かりました。

次はアプリごとにブロックの設定をしてみます。試しに、Gmailを使ってブロックが成功するかどうか確認してみます。
「アプリ」タブを開くと、インストールされている通信権限のあるアプリがずらりと並んでいます。アプリ一覧から、Gmailを選び、Wi-fiとモバイルネットワークのデータ通信の両方に赤い×をつけます。

この状態でNoRootファイアウォールを有効にしてから、Gmailアプリを開いて更新を行ってみます。通信がブロックされていれば、いつまで経ってもメールの更新が終わらないはずです。もしメールの更新が行われてしまった場合は、通信がブロックされていなかったことを意味しますから、何かおかしい点がないか見直してみましょう。
これでアプリごとのブロックも動作していることが分かりました。

マイアドレス更新

ファイアウォールアプリの使い方が分かったので、いよいよマイアドレス更新を行います。

先に、spモードメールアプリを最新版にアップデートしておきます。これはWi-fi接続を有効にしたまま行えます。

spモードメールアプリの「メール設定」>「その他」>「Wi-fiメール利用設定」からSPモード設定サイトに飛んで、「ドコモアプリWi-Fi利用設定」からWi-Fiオプションパスワードを設定します(すでにパスワード設定済みなら省略して構いません)。

NoRootファイアウォール で、「アプリ」タブを開き、アプリ一覧に載っている全てのアプリについて、四本縦線のモバイルネットワークのデータ通信を全てブロックします(二回タップして赤い×をつける)。

アプリ一覧が「真っ赤」になると思います。アプリが多いと大変ですが漏れがないようにしてください。

spモードメールアプリだけ、通信を許可します(緑のレをつける)。

NoRootファイアウォール が有効であることを確認した上で、本体の設定で、Wi-Fiをオフにして、モバイルネットワークのデータ通信を有効にします。
これで、spモードメールアプリ以外の通信はすべてブロックされることになります。

spモードメールアプリを起動して、「メール設定」>「その他」>「マイアドレス」をタップします。

「OK」をタップしてマイアドレス情報を更新します。
成功した場合は、今まで空欄だったマイアドレスに、自分のspモードメールアドレスが表示されるはずです。

ここで、いったん本体の設定に戻り、モバイルネットワークのデータ通信を無効にして、Wi-Fiをオンにします。

「メール設定」>「その他」>の一番下の方、、「パスワード設定」で、Wi-Fiオプションパスワードを入力します。

パスワード設定が終わったら、「Wi-Fiメール接続確認」を行います。

spモードセンターへの接続が確認できました。
これで、Wi-Fi接続で、spモードメールを送受信できるようになりました。

なお、この過程で「簡易通信量チェッカー」というアプリを使って通信量をチェックしてみましたが、3Gの送受信は13,378バイト、1パケット128バイトの換算で約105パケット。
後日マイドコモからパケット通信料の課金を確認しましたが、この日のスマートフォン定額通信のパケット課金はゼロでした。