Thursday, February 4, 2010

続: Nexus One と iPhone を SIM 1枚で運用する(MyWi編)

先日は Nexus One を親にしたテザリングでiPhoneを使ってましたが今回は逆になります。
この方法は iPhoneをjailbreakする必要があり、Nexus OneもカスタムROMにしなくてはならないため、積極的にオススメはできません。
が、既に条件を満たしているのであれば試してみるのもよいかと思います。

さて、Nexus One はカスタムROM CyanogenMod 5.0 beta3以降にします。 (参考)
それだけで準備OKです。

iPhoneのほうはJBアプリのMyWi (No Rock)というのをCydiaから入れます。しかしながらこれは有料で$9.99かかります。

MyWiはadhocネットワークでテザリングを可能にするアプリで、テザリングは純正同様にバックグラウンドで動作するので、テザリング中でも電話やネットワークが通常通りに利用できます。


また、純正テザリングは3.1.2で使えなくなってしまいましたが、MyWiをインストールすることにより再び有効化することが可能となりますので、そのために購入するのも悪くないかもしれません。

MyWiを起動したらSSIDとWEPを適当に設定して ON にします。

するとNexus Oneの無線LAN設定のところにSSIDが現れます。

WEPキーいれて接続するだけでOK。

さて、このCM5.0で実装されてるadhocネットワークのコードをみて比較してみますと、オリジナルのコードではどうやら意図的にadhocを無視して、関連するコードも省いてるようです。

抜粋
@@ -1147,9 +1167,10 @@
* Ignore adhoc, enterprise-secured, or hidden networks.
* Hidden networks show up with empty SSID.
*/
- if (AccessPointState.isAdhoc(scanResult)
- || TextUtils.isEmpty(scanResult.SSID)) {
- continue;
+ //if (AccessPointState.isAdhoc(scanResult)
+ // || TextUtils.isEmpty(scanResult.SSID)) {
+ if (TextUtils.isEmpty(scanResult.SSID)) {
+ continue;
}


大して難しくない内容なので移植してCM不要でできないかやってみようとしましたが、frameworkまで入れ替えねばならなくなり、この部分だけピンポイントで入れ替えるのが難しそうなので断念しました。


そんなわけで、今はiPhoneにSBMのSIMを差して2台を1枚のSIMで運用しております。
Nexus OneでのSBMのMMSがどうにも安定しないのでしばらくこの体制でいきます。

No comments: