dr.phoneを使ったらsaftyNetがFailedになった話

dr.phoneというデータ復元ソフトを使ったら
Android4.4.4を搭載していたXperia j1 Compactのいくつかのアプリが起動しなくなった話。

主にゲーム類
・どうぶつの森ポケットキャンプ
・パズドラ

特にポケ森はよくやっていたので、
いきなり起動後に通信エラーとなってエラーコード802-5808と出た。

Googleプレイで更新しようとすると、そのそもポケ森自体が一覧に表示されない。

どうやらSaftyNetという、改造したAndroidで不正ができないようにする
(不正する可能性のあるAndroidでは遊ばせない・インストールさせない)という正義の機能が働いているよう。

登場するアプリ・ソフトたち

結局は工場出荷時の状態に戻すのだが、あれやこれやと1.5日ほどをかけて
調べたり試したりしたので、備忘録がてら、箇条書きで適当に記録しておく。

dr.phone

・King Root
・Kingo Root
・iRoot

.Root Checker
・SuperSU

・Link2SD
・Android Studio
・Android Emulator

登場するアプリ・ソフトの詳細

【今回の主犯】
・dr.phone
データを復元したり、バックアップしたりとかのPCソフト。
iPhoneやAndroidをUSB接続して使う。
なんか良さげっぽくて使ったが、やっぱり用意に/systemをいじるものではないらしく、
Yahoo知恵袋で「知識もないのにいじるから」とお叱りの回答がたくさん。
今後、気軽にデータの復元などするものではない。

【ルート化アプリたち】
dr.phoneを使ったあと、
いつのまにかKingRootが内部にインストールされてしまった気がしている。
ダウンロード・インストールした覚えがないので、dr.phoneがこっそり入れてきたのかもしれない。

また、それぞれに『SuperUser』という管理者権限を管理するアプリが
別で用意されている(KingoRootはなかったかも)。
王冠やシールドのマークであり、これらは各アプリにsu(管理者)権限を付与することができる。
もちろんシステムアプリなので、通常の方法ではアンインストールできない。

・King Root
中国製のルート化アプリで、ワンタッチルートで簡単で、多くの人が止む無く使っているよう。
止む無く、というのは、このアプリが中国に、個人情報などのデータを送信したり、
スマホに常駐して、バッテリーを食うことで知られるため。

後述するSuperSUへ、管理者権限を移管して使用する方法がメジャーらしく、
その方法論がググったら沢山でてくる(筆者は結局できなかったのだが)

・Kingo Root
上記のKing Rootと1文字違いで紛らわしいが別アプリ。
同じようなアプリで、シールドアイコンのSuperUserアプリがうまく昨日したが
そのアプリ自体を消せず苦労した。

・iRoot
同じくRoot化アプリ。
今回、SaftyeNetのFailedを戻したくて、止む無くRoot化させたアプリがこれ。
操作は簡単だったが、設定の「ユーザー補助」で中国語のよくわからん説明のON/OFF項目が増え
結局よく分からなかったし、いきなり中国語音声の広告が流れたりする。

王冠マークのSuperUserアプリが自動生成され、
iRootを削除しても、そのSuperUserアプリは消えない。
システムアプリなので、通常の方法でアンインストールしようと思っても消せないから
別Root化アプリでRoot化しなおして(SUを移管できたのか?)、専用アプリにSU権限付与(Allow)して、
ようやく消すことができた。

正式なファイル名にしかirootsuとiroot関連のアプリであることが書いてないので
AndroidデフォルトのSuperUserアプリなのかと思って消すか最初は躊躇した。
あとアンインストールしてもbackupが残ることが多く、それが復活や悪さをする可能性あり。

.Root Checker
機器がRoot化しているか、SaftyNetはSuccessかFailedか、SU権限を持つSuperUserアプリはどれかなど、
現状をただ確認してくれるだけのシンプルなアプリ。
余計な機能がないので、正しく操作ができたか、現状はどうかを知るために信頼できる。

・SuperSU
ルート化アプリのSuperUserアプリから、
このアプリにSU権限を移管することで、アンルートや一時的アンルートなどが手軽に行えるよう。
あとセキュリティー的に、上記のKing RootとかiRootとかと比べるといいそう。

・Link2SD
もともと、SDカードに移動できないアプリを、su権限で移動して
本体容量を開けるためのアプリ。神アプリらしい。
今回はシステムアプリをアンインストールするのに使った。

・ESファイルエクスプローラ
いわゆるエクスプローラ。MacのFinder。
KingRootからSuperSUに権限移管する際に、
ネットからダウンロードしたデータ(mrwファイル)を/sdcard直下に移動したりするのに使う。
別移動ができれば何でもいいが、なんかこれが使われているっぽい。

・Android Terminal Emulator
Android本体上で、MacのターミナルのようにLinux?コマンドを打てるようになる。
PCを使わないでやる方法なら、これがいるパターンもあった。

・Android Studio
Androidアプリ開発者が使うソフト。この一部に組み込まれている機能?の
adb(Android Debug Bridge)を使えば、PCからAndroidを操作できる。
よくわからんがAndroid Studioを入れて、platform-toolsのパスを正しく●●に記載してやれば
ターミナルで $ adb コマンドが使える

USB接続した状態で
$ adb devices → 接続されている端末のリスト(端末番号?)が返って来る
$ adb shell
$ su

とすれば、Androidの中に入る?操作モードに以降したのち、
su(SuperUser)モードになり、
通常では出来ないシステムファイルの書き換えや操作ができるようになる。

mount -o rw,remount /system

など。

注意点

アプリインストールする際に下記を実施しないと、インストール失敗することがある。
・設定>セキュリティ>提供元不明のアプリ にチェックを入れる
・GooglePlay>Playプロテクト>端末をスキャンしてセキュリティ上の脅威を確認 のチェックを外す

参考リンク

KingRootからSuperSUに権限移管する(PC経由)
https://nekonotesou.net/how-to-delete-kingroot-and-move-supersu/
→いちばんしっかりした記事だったが、最後にうまくいかなかった。
http://faery.hatenablog.com/entry/2016/06/17/104107

KingRootからSuperSUに権限移管する(Android端末だけ)
https://matome.naver.jp/odai/2144902197876918201
http://tomoki1970.net/blog/kingroot-supersu/

同じくKingRootからSuperSUに権限移管し解除する方法(Yahoo知恵袋)
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q11173619361
→端末管理機能は「ユーザー補助」という項目にあることも

ルート化解除(リカバリーモード)
https://www.fonepaw.jp/solution/unroot-android-phone.html
→リカバリーモードとか使うの面倒で今回はやらなかった

ADB関連

https://qiita.com/furusin_oriver/items/f956848788c7a63922bd
https://qiita.com/hujuu/items/509fb234d29de10d6f1b

最後のこれが重要
$ export PATH=$PATH:/Users/<自分のユーザー名のフォルダ>/Library/Android/sdk/platform-tools
$ adb kill-server
$ adb start-server

ターミナルでのvim(vi)の操作に慣れてない人は
iでInsertModeとか
:wqで保存とか
編集・保存するための専用コマンドがまたLinuxとは別であるから、それはそれでググってくれ。

Android SDK(Android Studio)を入れてADBコマンド使えるようにする
https://hazilog.com/mac-adb-fastboot
→ADB(Android Debug Bridge)を可能にするSDK=PCからAndroid操作するためのツール。

Kingo Rootでルート取得した場合のSuperSUへの差し替え方法
http://gadgetr.seesaa.net/article/kingoroot.html
→KingじゃなくKingoの方の場合です。相変わらず紛らわしい。

Xpriaの人は通常とは違う手順が必要

Xperiaで/systemをrw(read and write)する方法
http://blog.right-apps.com/2018/06/29/post-135/

/systemのパスが違う場合がある?(一応のせとく。間違ってるかも)
https://www.ecoop.net/memo/archives/2011-02-04-1.html

Xperia初期化
https://saiyasu-syuuri.com/blog/xperia-restart-ways-procedure/

Xperia companion(PCからXperiaを工場出荷時の状態に初期化したりできる)Sony Bridge for Macとは別
https://shnk38.com/android/sony/xperia-companion-init/

その他

iRootでRoot化する方法
https://l-kyojin01.jp/archive/456#2-2iRootroot
https://shnk38.com/android/sony/xperia-unrooted/#root-2

KingRoot→SuperSUの同様情報ですが、中国アプリの危険性などを説いています(良いやさしい諭し)
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q10175549480