|
元々のAMAZON Fire ランチャー。
大量のメモリを消費してしまいます。
それ故、動きもモッサリしています。 |
てさて、先日購入したAMAZON Fire7タブレットでありますが、以前ご報告申し上げました通り、GooglePlayストアをインストールする事で、AMAZONのサービスしか利用出来ないという縛りを外し、汎用Androidタブレットとして生まれ変わらせる事に成功しました。
とは云え完全にその動作に満足した訳ではありません。スリープ状態からウェイクアップする度にロック画面が表示され、それを一々スワイプアウトする必要があるのですけれども、これが非常にウザいのであります。ところがこれを無効にする設定項目が、どこにも見当たりません。
ところで、Fire7タブレットは搭載メモリ量が限られた廉価マシンですので、快適に使用する為にはメモリを大量消費するタスクを何とかする必要があります。個々のアプリのメモリ消費は仕方がないとしても、調べてみるとFireランチャーと呼ばれるAMAZON製のホーム画面が、大量のメモリを食っている事が判明しました。AMAZON製のホーム画面は、「ホーム」の他に「オススメ」「本」「ビデオ」「ゲーム」「ミュージック」といった複数のタブで切り替える方式になっています。しかしそもそも、私はSONY
Reader Store派ですのでキンドルBook Storeを利用しません。Amazonの「本」サービス(電子書籍サービス)は一切使わないのです。非力な廉価マシンでわざわざ「ゲーム」をする気も有りませんし、「ビデオ」も「音楽」もそれぞれ「アマゾンプライムビデオ」「アマゾンミュージック」というアプリが実装されている訳ですから、それを使えば良い事でしょう。「本」「ビデオ」「ゲーム」「ミュージック」といったそれぞれのアプリを、使いもしないのに全て立ち上げてある状態、それがFireランチャーと呼ばれるAMAZON製のホーム画面なのであります。
更にこいつにはON Dock機能が搭載されています。使用者が好みそうなビデオを事前に自動でダウンロードしておく機能。観る心算の無いビデオデータを何の断りも無く自動でガンガンローカルストレージに溜め込んでしまうのであります。その上、オススメのコンテンツを表示する為に頻繁に通信が発生しますしね。単なるホーム画面の癖にゴテゴテと不要な機能が満載されている事が、全体的なモッサリ感の原因となっているのは間違いありますまい。
そこで今回は、次のような仕様変更を行なう事にしました。
- ウェイクアップの度に表示されるロック画面を無効にする
- 不要な機能満載のAMAZONランチャーを無効にする
- 代わりにAndroid汎用のNova Launcherをインストールし、標準ランチャーとして使用する
|
一時的にRoot権を奪取しました。 |
これらの設定の為には、Root権限(Administrator権限)を得る事が必須となります。OSの著作権解釈によっては、Root権限の奪取はリバースエンジニアリングの一環と見なされる場合もありますし、そもそもRoot権限を得るとマシンやOSに対してあらゆる指示・命令が可能となりますので、最悪の場合、OS環境自体を壊す事も出来てしまいます。つまり折角のFire7タブレットが二度と起動しなくなってしまうリスクがあるのです。以下の手順は、私の備忘録的な意図で記述するモノであり、UNIX(Linux)の知識に乏しい方は、Fire7が文鎮化する可能性(誰のアイデアかは知りませんが、文鎮化とは上手い表現を考えたものですネ)がありますから、決してマネしないで下さいね。
尚、この作業はAmazon Fire7タブレット(2019版)に既にGooglePlayストアがインストールされている前提で記述されています。
始めにGooglePlayストアから、Nova Launcherをインストールします。これは何も難しい事もなく、インストールボタンをクリックするだけです。インストールされたNova
Launcherのアイコンをタップすると、新しいホーム画面が立ち上がりますが、これは単なるアプリとして動作しているだけで、OS標準のランチャーとして動作している訳ではありませんから、このアプリを終了すると元のAmazon製ホーム画面に戻ってしまいます。この時点ではNova
Launcherが正しくインストールされた事を確認するだけに留めておきましょう。
続いてGooglePlayストアからTermuxをインストールします。これはLinuxのターミナル画面のエミュレータです。最近ではGUI(グラフィカル・ユーザ・インターフェース)でしかマシンを制御した事が無い方が多いと思われますけれども、OS(オペレーティング・システム)のコアモジュールに対しては、コマンドを入力する事で指示を出す事が可能で、GUIはマウス等の動作を元にコアモジュールに対してコマンドを自動発行する事で動作しているのです。Linuxのターミナル画面では、キーボードからコマンドを直接入力して、OSに指示を出す事が可能です。
Termuxを起動すると、プロンプト$が表示され、コマンド入力待ちになります。ここからはLinuxコマンドを使って、処理を進めていきましょう。コマンドは全て半角文字ですので、入力ミスを防ぐ為にも、日本語キーボードではなく、英語キーボードに切り替えておく事をオススメします。ダブルクォーテーションやシングルクォーテーションなど、日本語キーボードのままだと全角文字で入力してしまっても、分かりづらいですからね。その点、英語キーボードに切り替えれば、全角文字は絶対に入力出来ませんから、安心という訳です。
データベース管理システム「SQLite」のインストールを行ないます。SQLiteは各種の設定情報が格納されているデータベースにアクセスする為に必要なモジュールです。Microsoft
Windowsでいうところの、レジストリをイジる行為をイメージして頂ければ良いでしょう。SQLiteはLinuxターミナルの標準ツールとして用意されていますが、初期設定ではアクティベイトはされていません。そこで、プロンプト$の後ろに
pkg install sqlite
と入力してEnter押下で、必要なモジュールが展開され、ツールがアクティベイトされます。
|
Nova Launcherにしたら
サクサク動くようになりました。 |
さて、準備が整いました。ここから先はOSのコアモジュールの設定変更を行ないますので、Root権限を得る必要があります。Root権限を得るとOSに対してあらゆる指示が可能になりますから、OS環境自体を壊す事も出来る危険な状態となりますし、一部のアプリ(特にネットワークゲーム等)はRoot権限を奪取しているかどうかをセンシングして、Root権限状態では動作を停止する仕様になっているモノもいくつも存在しますから、本当にRoot権限を奪取するのではなく、コマンドを使って一時的なRoot奪取状態を作る事にします。つまり、今回の設定変更作業の間だけ、一時的にRoot権限を得るだけで、設定作業が終了したら元の権限に戻そうという訳。
一時的にRoot権限を奪取するツール「MTK」をダウンロードします。MTKはZIP形式のパッケージで流通しています。以下のサイトからダウンロード出来ます。
https://forum.xda-developers.com/android/development/amazing-temp-root-mediatek-armv8-t3922213
今回はCPUのバージョンに合わせて、mtk-su_r16.zip をダウンロードしました。Fire7のブラウザからダウンロードすると、ディフォルト設定では、/storage/emulated/0/Download/
に格納されます。
続いて、内部ストレージのフォルダ構成にあわせたシンボリックリンクを作成する為に、プロンプト$から以下のコマンドを入力します。
termux-setup-storage
その上で、ダウンロードしたmtk-su_r16.zipをTermuxのホームディレクトリにコピーする為に以下のコマンドを入力します。cpはcopyの略で、「/storage/emulated/0/Download/
にある mtk-su_r16.zip というファイルをホームディレクトリにコピーせよ」という意味です。
cp /storage/emulated/0/Download/mtk-su_r16.zip ./
続いてカレントディレクトリをホームディレクトリに移動します。既にシンボリックリンクをセットアップしてありますから、実ディレクトリ名を記述する必要はなく、以下のコマンドを打つだけでOKです。cdはchange
directoryの事です。
cd $home
ホームディレクトリで、以下のコマンドを入力して、先ほどコピーしたmtk-su_r16.zipファイルを解凍(展開)します。
unzip mtk-su_r16.zip
次のコマンドで、ホームディレクトリの下に展開された/armにカレントディレクトリを移動させます。
cd arm
いよいよmtk-suを起動して一時Root化を図りましょう。その前に以下のコマンドを入力してmtk-suのパーミッションを変更して、実行可能モジュールとしてシステムに認識させます。
chmod 700 mtk-su
mtk-suを実行します。$だったプロンプトが、#に変わったら、一時Root化が成功した証です。
./mtk-su
念のためroot権限が取得出来たかをコマンドで確認してみましょう。プロンプト#から以下のコマンドを入力してみて下さい。
id
これにより、uid=0(root) gid=0(root) という記述が現れたらroot化は成功しています。
現在、Root化状態にありますので、SQliteを使ってレジストリ・データベースに変更を掛け、ロック画面を無効に設定します。以下のコマンドをプロンプト#から入力します。
sqlite3 /data/system/locksettings.db "UPDATE locksettings SET value
='1' WHERE name = 'lockscreen.disabled'"
続いて最初にインストールしたNova Launcherを有効にする為に以下のコマンドをプロンプト#から入力します。
pm enable com.teslacoilsw.launcher
更にディフォルトのAMAZON Fire Lancherを無効化する為に、以下のコマンドをプロンプト#から入力します。この処理により、AMAZON製のホーム画面ではなく、Nova Launcherが標準のランチャーとしてOSに認識される事になります。
pm disable com.amazon.firelauncher
さて作業はこれで終わりです。危険なRoot権奪取状態を終了させる為に、プロンプト#から以下のコマンドを入力します。
exit
一時的なRoot権状態が解除され、プロンプトが通常の$に戻りましたね?最後にTermuxを終了する為に、プロンプト$から以下のコマンドを入力すると、Termuxが終了しホーム画面に戻ります。
exit
後は電源ボタンを長押し後、再起動を選択します。再立ち上げ後には、ウェイクアップの度に表示されていたロック画面が無効となり、不要な機能満載のAMAZONランチャーの代わりにAndroid汎用のNova
Launcherが表示されるようになったのが確認出来るでしょう。
今までのモッサリ感は無くなり、全てがサクサク動くようになりました。繰り返しになりますが、今回の記事はあくまでも私の備忘録的な意図で記述したモノに過ぎません。2019年版AMAZON
Fire7タブレット(FireOSバージョン:6.3.1.2)に対し、上記のオペレーションを寸分違わず実行すれば、同じ結果を得る事はさほど難しくは無いでしょう。成功すると、安価なハードウエアにも関わらず最高に快適な環境を手に入れる事が出来るのは事実ですけれども、よい子は決してマネしてはいけませんョ。勿論これらを試した結果、いかなる不具合が生じたとしても、Yaszone.jpでは一切の責任を負いかねます。も〜、だから〜、絶対マネしちゃ駄目ですからね!
【つづく】
「あれこれ」の目次に戻る