スキップしてメイン コンテンツに移動

Galaxy Sol (J321AZ)が文鎮化した(復旧を断念)。

友人に頼られてAndroid機をroot化することになった。
自分の懐が痛まないスマホいじりほど楽しいものはないと言いたいところだけど、アメリカに来てまで文鎮職人としての腕を上げることになるとは思ってなかった。

彼はスマホを2台持ちしていて、ドコモのiPhone 6と、Cricket WirelessというAT&T系のMVNOでプリペイド契約したGalaxy Sol (J321AZ)という機種を保有している。月額30ドルくらいで通話とSMSが無制限、あとデータ通信が2GBくらいらしい。
彼のiPhoneがそのままアメリカでも使えれば万事解決なのだけれど、国内キャリア版iPhoneのSIMロック解除が可能になったのはiPhone 6S以降なので、SIMロックがかけられている。auだったらAT&TのSIMが使えるのに

そんなわけでGalaxy Solに通話/データ通信が可能なSIMが挿さっているのだけれど、Cricketが制限をかけているおかげで、そのままではテザリングができない。つまり、屋外ではiPhoneがネットに繋がらない。月額10ドルくらいを上乗せしたら、(公式に)テザリングが開放されるみたいなんだけど、そこにお金をかけるのは馬鹿らしい。というわけで、なんとかならない?と相談を受けた。

ところでこのテザリング制限、SIMではなく端末にかけられているらしく、自分のY!mobile版 Nexus 5では問題なくテザリングができた。彼はGalaxy Solを80ドルくらいで購入したそうで、どうせ安い端末を買うならキャリア機じゃなくてAmazonかどこかでUnlockされているものを買えばよかったのに、なんて言ってもしょうがない。
あと、この Unlockされている という表現はちょっとおもしろい。無線に対する有線、スマホに対するガラケーのような、新しい概念が登場したせいで生まれた言葉で、不思議な感じがする。

閑話休題。

小言を吐いてもしょうがないので、どうしようかと少し考えて、思いついた計画が2つ。
まず、ebayあたりで業者からUnlock Codeを購入し、Galaxy SolのSIMロックを外す。ざっくり15ドルから30ドルくらいで、比較的リスクは低め。
それから、端末をroot化、Xposedを導入し、X Tetherを使う。(技術料を除いて)費用はかからないが、失敗すると端末が起動できなくなる。

どちらがいいか訊いてみると、後者とのこと。頼む方からしたら安いほうがいいよね。受ける方からしても楽しいほうがいいので都合がいい。

そんなわけで、初めてGalaxyに手を出すことになった。

いつも通りにXDAで調べながら作業を進めた。
参考になったのはこのあたり。この機種には兄弟機がたくさんあるらしく、J320A(Z)用のrootツールが流用できるらしい(が、バッチファイルを使うと端末名が上書きされてしまうので、必要に応じて修正したほうがよさげ)。ややこしいからSamsungには端末数を絞ってほしい。

(Release) Root For Samsung Galaxy Amp Prime (J320AZ)

[Root] J320A/J320AZ alternate method, without Kingroot!!

[UNOFFICIAL][5.1/6][v87.1][28 Nov]Xposed for Samsung Lollipop/Marshmallow

ざっくりとした手順はこんな感じ。

1. 開発者オプションのOEM UnlockとADB Debuggingを有効化。
2. Download Modeで起動した端末をOdinというソフトを起動したパソコンに接続し、boot.imgが入った.tarファイルを AP に入れて焼く。Download Modeへの入り方は、Power/Volume Down/Home の同時長押し。
3. なんらかの方法でrootを取得。2番目のリンクのツールを使うと楽。
4. 必要に応じてXposedを導入。いらなければこの工程は不要。

どうやらこの機種にはTWRP等のカスタムリカバリがないらしい。zipファイルを焼くためには、一度端末を起動して、Flash Fire等のアプリを使わないといけない様子。
わかってしまえば特別難しい工程はなく、root化まではなんとなくうまくいった。最後にXposedを導入するところで気が緩んで失敗した。

何も考えずに、いつも使っている Xposed Frameworkを導入。やけに起動が長いなあ、と思いながら待っていると、どうやら様子がおかしい。Samsungのスマホに普通のXposedを導入すると、再起動ループに入るらしい。知らなかった、手遅れ。
カスタムリカバリを導入していれば、そこから xposed-unInstaller.zipを焼けば再起動ループを脱出できる。先述の通りこの機種にはカスタムリカバリがないので、どうすることもできない。セーフモードでの起動を試みるも、うまくいかない。

先程のリンクの1つめを見ると、Xposedの導入でやらかしたマヌケはSmart SwitchのEmergency Recoveryを使おう(意訳)、と書かれている。Smart Switchとはなんぞや、と調べてみると、Samsungが提供しているツールらしい。Odinは聞いたことあったけど、こっちは初めて知った。
縋ってみたところ、どうやっても端末を認識してくれない。ドライバを入れ直してもダメで、断念。

いよいよ詰んだか、と思ったところで、Samsungのスマホは基本的に初期ROMがネットに転がっているらしいという話を思い出した。ところがこのGalaxy Solという機種、メジャーではない というより似たモデルが多すぎる ので、ROMも簡単には見つからなかったり、課金を要求されたり。やっと見つけたものをOdinから焼こうと試みたものの、どうやっても途中で引っかかる。これ以上時間をかけても解決できる見込みがないので、断念。文鎮の完成。おめでとうございます。

間違ったXposed Frameworkを焼いたというミスが明確なのに対処法が見つからず、奥の手を使うほどに泥沼にはまっていくのが非常に楽しかったです。友人にはごめんなさいしました。二度とやりたくない。

とはいえ、学びはたくさんあった。
Samsungのスマホには専用のXposed Frameworkを焼かないと再起動ループに入るということ。
OdinやSmart Switchなどというツールが整っている にも関わらず見事に文鎮を錬成する人もいる ということ。
TWRP等のカスタムリカバリなしで作業するのはリスクを伴うこと。
Samsungのスマホは兄弟機が数多くあ ってややこしく、下手にマイナー機に手を出すと泥沼にはまる可能性があ ること。
EagleGet あたりのダウンロード支援ソフトを使うと待ち時間が軽減できること。

結局、素直にUnlock Codeを業者から買っておけばよかったのかもしれない。いや、これも正攻法というわけではないけど。

というわけで、彼は屋外での通信手段がなくなってしまったので、自分のNexus 5が一時的に彼の手元に渡った。自分はiPad ProさえあればGoogle Voiceで通話もできる のと、そもそも人と連絡を取る機会が少ない ので、なんとかなる。
最初はNexus 5にマルチアカウントを設定しようと思っていたのだけれど、どうやらそれではテザリングが使えないらしい。しょうがないから、既存環境にアプリを足したり引いたりして渡した。数日前に LineageOS 14.1を焼いた ところなので、余計なアプリも少なめで楽だった。

彼はiPhone 6にも不満気味らしく、この機会にSIMフリーのiPhoneを買おうか、と意気込んでいる。サイバーマンデーも近いし、ちょうどよかった。ほんとすみません。