Fire HD 10 (2017) でどうしてもGoogleアカウントからログアウトしたい

Amazon FireシリーズにGoogle Playをインストールすると世界が広がります。実際、Google Playをインストールする方法はたくさんインターネットで紹介されています。Google Playを導入すれば、Googleアカウントでログインして使うことになりますし、複数のアカウントでログインすればより便利になります。
しかし、Fireと紐づいたGoogleアカウントを紐付け解除して端末からアカウントを消去する方法は、検索してもあまり出てきません。
FireタブレットでGoogleアカウントを追加・削除する方法 | 有限工房という記事が最も参考になりますが、手元のFire HD 10 (2017)では動作しませんでした。Google Playのアカウントの画面で、[この端末のアカウントを管理]をタップしても、通常の設定画面のトップが表示されてしまい、Android標準のアカウント設定画面が表示されません。
そこでActivity Launcher (Google Playストア)を使用したところ、アカウント設定の画面を呼び出すことはできたものの、ログアウトしたいGoogleアカウントを選択すると設定アプリが落ちてしまい、アカウント消去ボタンまで辿り着けず、結局ログアウトできませんでした。
上の記事では、Google Playのアンインストールまたは端末初期化(ファクトリリセット)が勧められていますが、単純にログアウトしたい人にとっては大袈裟なものです。
そこで、本記事で紹介するGoogleアカウントからのログアウト方法を使えば、Androidの通常のログアウト方法よりは複雑な手順であるものの、Google Playストアの再インストールより簡単に行うことができます。ただし、この方法はログアウトしたい人向けの、ある種の最終手段となりますので、上の記事およびActivity Launcherなどを試してみて、それでもだめだった場合に使用してください。

なおこのログアウト方法はFire HD 10 (2017)のみで動作を確認していますが、ほかの世代および端末でも動作する可能性が高いです。(というのも、Android OSの機能を利用しているためです)

それでは上の内容を理解していただけたら、実際にログアウトしてみましょう。v(・∀・*)
あくまで自己責任の範囲でお願いします(´・ω・`)

実際の手順

ここからは実際にログアウトする手順を紹介します。

1. ホーム画面を切り替えている場合の下準備

ホーム画面をデフォルトのランチャーからNova Launcherなどに切り替えている場合、Nova Launcherをシステムアプリ化する必要があります。(もともと入っているデフォルトのランチャーを有効化する方法もありますが)システムアプリ化するにはroot権限が必要ですので、root化を解除している場合にはもう一度root権限を取得してください。既にシステムアプリ化している場合には飛ばしてください。

a.WindowsパソコンのコマンドプロンプトまたはTermuxなどのコマンドラインツールでsuコマンドを打ちます。

$ adb shell
$ su
#

b. /system領域をリマウントします。

mount -o rw,remount /system

c. カレントディレクトリを/system/appにします

cd /system/app

d. 使用しているランチャーのパッケージ名のディレクトリを作成します

パッケージ名が何かわからない場合にはこちらの記事などを参照してください。
mkdir [パッケージ名]
例えばNova Launcherの場合はこうなります。
mkdir com.teslacoilsw.launcher

e. ファイル全部をコピーします

Nova Launcherの場合には以下のようになります。それ以外のランチャーの場合には、したのコマンドのcom.teslacoilsw.launcherの部分を使用しているランチャーのパッケージ名に変更してください。
cp -r /data/app/com.teslacoilsw.launcher/* /system/app/com.teslacoilsw.launcher/

f. コピーしたディレクトリまで移動して、権限を与えてください。

Nova Launcherの場合には以下のようになります。それ以外のランチャーの場合には、したのコマンドのcom.teslacoilsw.launcherの部分を使用しているランチャーのパッケージ名に変更してください。
(chmodの数字(権限の数字)に気をつけてください)
cd /system/app/com.teslacoilsw.launcher
chmod 644 *

g. 端末を再起動してください。

電源ボタンを長押しして再起動オプションがある端末ではそれを選択して、なければ一回電源を切って、画面が消えてからもう1度起動してください。
起動が終わったら、設定を開いて、[アプリ]、[すべてのアプリを表示]、[すべて]タブにある使用しているランチャーの設定画面でアンインストールが出来なくなっていれば成功です。

参考文献:[要root化] androidでシステムアプリとしてinstallする方法 - Qiita

なお、キーボードも標準搭載のキーボードを無効にしている場合には有効にしてください。(あとでセーフモードで起動した時に使用出来るキーボードを用意するため)

pm enable jp.co.omronsoft.iwnnime.languagepack.zhcn_az
pm enable jp.co.omronsoft.iwnnime.mlaz

2. 万が一のときのため、重要なデータはバックアップを取っておきます。

私の場合、写真や動画はGoogleフォトにバックアップさせてあったので、特に重要なアプリのデータと内部共有ストレージのファイルだけバックアップしました。アプリのデータのバックアップはroot権限を使ってもいいですし、使用可能であればadb backupコマンドを使用しても構いません。詳細なバックアップの方法についてはここでは割愛します。

3. セーフモードで起動します

Fire HD 10 (2017)であれば、電源ボタンを長押しして上のダイアログを表示させ、[OK]ボタンを長押しします。
このダイアログで[OK]をタップします。
ほかの機種の場合にはそれぞれ方法があると思うので、「機種名 セーフモード」などと調べてみてください。
するとセーフモードで起動します。ロック画面やホーム画面が表示された時点で、画面左下に[セーフモード]の表示があればセーフモードで起動できています。
2020/06/30追記:筆者の環境では、セーフモードに切り替えて、通常モードに切り替えただけで、Googleアカウントがログアウトされているということがありました。各アプリのデータ消去を行わなくてもセーフモードに切り替えるだけでログアウトされることがあるようです。さらに、Googleアカウントを直接管理しているのは、「Googleサービスフレームワーク」のようです(未検証)。 

4. 実際にログアウトさせます

Google Playを導入するときにインストールした4つのアプリのデータを順番に消去していきます。
[設定]を開き、[アプリ]、[すべてのアプリを表示]をタップして、Google Playストアを探します。
[データを消去]をタップしてダイアログが表示されますがそのまま[OK]。[端末のデータ]が0になっているまたは減ったことを確認します。
次に戻って、Google Play開発者サービスを探します。
[空き容量を管理]からの[すべてのデータを消去]を選択します。セーフモードで削除すると、私の環境ではGoogle Play開発者サービスだけはデータが消えてくれませんでした。何度消去をタップしても消えないので仕方なく次のアプリのデータを消去します。
次に、Googleサービスフレームワークを探します。
Google Playストアと同じようにデータ消去します。この時データが消去されていることを確認してください。[端末のデータ]のところの容量の表示が0になったり、数字が減れば削除出来ています。
最後にGoogleアカウントマネージャーを探して同じようにデータ消去します。
ここまで行った後、セーフモードを解除してます。電源ボタンを長押しして電源を切り、画面が消えたらもう一度起動します。

起動が終わってロック画面またはホーム画面が表示されたら、さきほどデータ消去できなかったアプリのデータを消去しに行きます。4つとも消去できていればこの作業は飛ばして下さい。
私の場合にはGoogle Play開発者サービスのデータ消去が何故か上手くいかなかったので、Google Play開発者サービスのデータを消去します。さきほどと同じ要領で[設定]を開き、[アプリ]、[すべてのアプリを表示]をして、[Google Play開発者サービス]を探して、[空き容量を管理]を選択、[データをすべて消去]をタップします。0にはなりませんでしたが、データがほとんど消去されました。
なお、セーフモードでない状態でデータを消去する際は手早く行ってください。(ほかの依存アプリが起動してエラーなどが発生したりする前に行うためです)

5. Google Playストアを開いてログインしなおします

Google Playストアを起動して、ログインしなおします。そうしないとGoogle Playが使えないからです。ログアウトしたアカウントとは別のアカウントなどでログインしなおします。
私の環境では、最初にGoogle Playストアを開いた後、ログインを選択したところ、Google Playが落ちてしまい、もういちど起動させようとしたところ[このアプリはインストールされていません]のトーストが表示されたため、設定でNova Launcherを強制終了させてから、Google Playを起動しなおしました。

注意事項

Google Playのデータを完全に消去するため、Google Playからインストールしたアプリも、Google Playからインストールされたと認識されなくなり、各アプリの更新を認識しなくなります。(マイアプリの画面に表示されなくなります)更新がリリースされた際には気付き次第、Google Playで該当アプリ名などで検索してアプリのページを開いて更新をしてください。
更新か再インストールすればGoogle Playからインストールされたアプリと認識され、マイアプリに表示されるようになるので、再インストールしてGoogle Playに認識させるのも手です。
マイアプリに表示されているアプリはそこから一括で更新できるので便利です。
2020/06/26追記:時間が経つことでアプリが認識されるようになっていました。なのでこちらの内容は無視していいように思えます。

後片付け

これでGoogleアカウントを端末から消去することができましたが、Googleアカウントではまだ有効なセッションとして残ってしまっていますので、セッションを削除します。
Googleにパソコンまたはスマホでアクセスして、ログアウトしたアカウントでログインします。次にお使いのデバイスにアクセスして、ログアウトしたFireを探します。
次に右上のメニューボタンから[ログアウト]を選択します。
上のようにログアウトしましたと表示されれば完了です。

2020/06/30追記:Googleアカウントからログアウトする影響 

ログアウトすると他のどんなアプリに影響が出るのかを記します。 
  • Google Play ミュージック、Google Play ムービー&TVといったGoogle Playの各種アプリでダウンロードしていたファイルが消え去る(表示されなくなる)。(ただしGoogle Play ブックスのでダウンロードしていた本は削除されていませんでした。該当の本があるアカウントでログインすると、本がダウンロードされた状態になっていました。) 
  • Google関係のアプリの再設定が必要(当たり前) 
  • オフラインで使用可にしておいたGoogleドライブのファイルが消え去る(表示されなくなる)。 
  • Google PlayからインストールしたTwitterアプリにログインしていたすべてのアカウントからログアウトされる。(おそらくAmazonのアプリストアからインストールしたTwitterアプリではログアウトされないと思います。未検証。) 
ログアウトされてしまったりして、初期状態に戻ってしまったアプリは、再設定する前に、各アプリのデータ消去をかけることをオススメします。[設定]、[アプリ]、[全てのアプリ]を表示の順に進み、[すべて]タブから該当のアプリを探し[データ消去]をタップします。そうしないと、ログアウトする以前に各アプリが溜め込んだデータを各アプリが管理できず、端末の容量を圧迫する場合があります。 

最後に

複数のGoogleアカウントでログインしていて、プライマリアカウントを変更したいときなどにもこの方法は使えます。データ消去というAndroid OSの標準機能を使用していますので、ほかの世代・端末でも動作することが予想されますが、手順が多少違う可能性がありますね。
以上の方法でFireからGoogleアカウントを消去=ログアウトすることが出来ます。ログインしたもののログアウト出来なくて困っている場合にはこの記事を参考にしてぜひログアウトさせてみてください。セキュリティの向上にも繋がります。
ログアウトしたあとも再度ログインすれば引き続きGoogleの各アプリを利用できますし、アプリのインストールも可能です。
なお本記事に対するご意見ご質問等を随時受け付けています。Twitterまたはコメント欄よりお寄せください。
なお、本記事の内容は執筆時のもので、本記事の内容によって発生したいかなる損害も負いかねます。あくまで自己責任で行ってください。
最後までお読み下さりありがとうございましたっ!(。•ᴗ•。)♡

コメント