とりとめもなく、だらだらぬるぬる書き留めるらしいです。

P-01DのSIMロック解除




P-01DをAMAZONで検索(\4,900~)

夜中までかかって格闘して、なんとか成功しましたP-01DのSIMアンロック。
キーになったのは、2ch P-01D rootスレの下記投稿

【ROM焼き】docomo with series P-01D root1
http://anago.2ch.net/test/read.cgi/smartphone/1343620749/

606 名前:SIM無しさん 投稿日:2012/08/21(火) 00:06:23.07
SimLockDialog$4.smaliのStrings.equalsを呼んだ後の分岐をコメントアウト
端末情報から適当な解除コードを入れても解除できた。
長さチェックは残すので、充分な長さは必要。
親切なことに、元々、ヒントになるログも吐いてくれるので参考になる。

解除コードの認証方法も、SimLockDialogを読めば分かるけど、
現実的な時間で解除コードを求める方法は分からず。

あと、アンロックした結果がどこに作用するか調べて、
直接そっちをイジれば簡単とも思ったが、よく分からなくなったので深追いしてない。


620 名前:615 投稿日:2012/08/21(火) 14:50:58.32
#if-eqz v14, :cond_4
じゃあだめでした


621 名前:SIM無しさん 投稿日:2012/08/21(火) 19:38:39.26
606サンクス。一応できたようだ
620の人は、そもそも解除コード入れてるかい?


624 名前:615 投稿日:2012/08/21(火) 20:54:44.67
>>621
>解除コード入れてるかい?
いつどこでいれるのでしょうか??

Photonの時は電源ONで入力画面になったんですが


630 名前:SIM無しさん 投稿日:2012/08/22(水) 03:52:43.43
>>624
これじゃねーの?

> 121 名前:SIM無しさん 投稿日:2012/02/02(木) 17:14:15.54
> ホーム → [MENU] → [設定] → 端末情報 → [MENU]押しながら[VOL-]
> で、SIMロック解除コードの入力画面が出る。
> SIMロック解除済みの場合、「SIMロック解除済みです」と出る。
>
>
> 123 名前:SIM無しさん 投稿日:2012/02/03(金) 00:31:31.78
> 要するに「端末情報」を表示した状態で、MENUキーとボリューム下げるボタンを同時に押すんでしょ?
> 俺のP-01Dは解除コードの入力画面出たよ。
> 何入力すればいいのかわからんけどw

http://anago.2ch.net/test/read.cgi/smartphone/1320986759/121-123


634 名前:615 投稿日:2012/08/22(水) 09:55:58.25
色々指導、助言ありがとうございました
V1.3.1でうまくいったようです

2台目を買ったときのために、自分の作業メモとして残しますが、原則質問は受けません(笑)
正直、自分でも何がキーになって失敗/成功したのかよくわからないので・・・

もし試す場合は、
・P-01Dを文鎮化(壊す)させる可能性がある。
・不正競争防止法や電波法その他の法律に触れる可能性がある。
ことを理解されたうえで、すべて自己責任でどうぞ。

<用意するもの>
P-01D(root化済み、バージョン0.68適用)
P-01D用ADBドライバ [ここ]
Android SDK(Platform-tools) [ここ]
APK Tools [ここ] V1.3.1を使用
apktool(↑APK Toolsのtoolsフォルダ内にあるapktool.jarとapktool.batを適当なパスを通したフォルダにコピー)
JAVA [ここ] Jre6を使用

それぞれのインストール方法や使い方は、各自で調べてください。

<順序>
(1)adb pullでP-01Dの/system/app/Settings.apkと/system/framework/framework-res.apkを入手
(2)apktool if framework-res.apkで、リソースダウンロード
(3)APK Toolsインストールフォルダ先の「編集前」フォルダにSettings.apkをコピー
(4)APK Toolsを起動(Start.bat)し、「2 [編集前]をデコンパイル」
(5)APK Toolsインストールフォルダ先の「ソース」フォルダ内にSettings.apkが解凍されるので「SimLockDialog$4.smali」というファイルを探す。
(6)SimLockDialog$4.smaliをテキストエディタで開き「if-eqz v14, :cond_4」という行をコメントアウトして保存。
(7)APK Toolsの「3 [ソース]をコンパイル」すると、APK Toolsインストールフォルダ先の「編集後」フォルダにSettings.apkファイルが作成される。
(8)adb shellで、オリジナルのSettings.apkをバックアップ(Settings.apk.orgとかにリネーム)しておく。
(9)adb pushで(7)で作成したSettings.apkファイルを/system/appにアップロードする。
(10)adb reboot
(11)P-01Dが再起動したら、「設定」⇒「端末情報」に入り、MENUキーとボリューム下げるボタンを同時に長押し、解除キーに適当な文字(最大24文字?)を入力して「OK」
(12)「SIMロックが解除されました」と表示されれば完了。

ざっとこんな感じでした。

<困った点>
・framework-res.apkからリソースダウンロード(apktool if)を忘れると、コンパイルで失敗するようです。
・最初はAPK Toolsを使わず、apktool単体でapktool bコマンドを使ってコンパイルしていましたが、Settings.apkを作るときに7-zipでAndroidManifest.xml、Classes.dex、Resources.arscを再圧縮かけて前のapkファイルに上書きする作業がどうも怪しくて、結局APK Toolsでデコンパイル、コンパイルするようにしました。
・APK Toolsのアップロード(adb push)はなぜか失敗したので、手動でadb pushしています。
・解除キーは、何桁が正解なのかよくわかりません。適当に入力したので・・・w

たぶん、よく知っている人がやればもっと簡単な手順でやれると思います。
(1)(2)(3)も、adbやapktoolコマンドを使わなくてもAPK Toolsだけで完結する気がする。

(11)で何度も失敗し、そのたびにコンパイル・アップロードを繰り返しましたが、正直何が問題で失敗していたのかよくわかりません。
最初に、APK Tools同梱のapktoolとは異なるバージョンのapktoolで(2)のリソースダウンロードをしていたのが問題だったのかも。
ちなみにSettings.apkを壊してしまっても「設定」が出なくなるだけなので、オリジナルのapkファイルをバックアップしておけば、致命的な状況になるケースは少ないと思います。

そういうわけで、これを実行することで、P-01DがSIMフリーとなり、ソフトバンクSIMを使えるようになります。
残念ながら3G 900MHzには対応していないので、プラチナバンドでは使えません。

次は、ソフトバンクMMSを受信できるようにしてみたいと思います。
(また時間のあるときに・・・w)

なお、パケ放題契約をしていないSIMをスマホに刺すと、パケ死(パケット代で死亡)する可能性もありますので、くれぐれもご注意を。

2chの先人や、ツール開発者の皆様に感謝!

トラックバック・ピンバックはありません

ご自分のサイトからトラックバックを送ることができます。

コメントをどうぞ