ナビゲーション バーのカスタマイズはストック ヌガーにずっと隠されていました...ルートは必要ありませんでした

click fraud protection

Android O のナビゲーション バーのカスタマイズは、実際には Android Nougat ではずっと隠されていました。 まあ、誰もがそれを知っていましたが、root は必要なかったことが分かりました。

ここで挙手をしてください: 実際に最初に実行するのは何人ですか Android O 開発者プレビュー? 開発者プレビューは少数の Google デバイスでのみ利用できるだけでなく、日常のドライバーとしてはまったく適していません。 もちろん、これは平均的なユーザーが使用することを意図したものではなく、Android O が正式にリリースされたときに開発者がアプリケーションが動作することを確認するためのテストベッドとして使用されていました。 しかし、だからといって、自分自身で楽しんだり、中身を見てみることができないというわけではありません。 Android O デバイスに導入される最もエキサイティングな機能の 1 つは、 ナビゲーションバーのカスタマイズ システム UI チューナーにあります。 しかし、この素晴らしいナビゲーション バーのカスタマイズが Android O Developer Preview のユーザーだけが利用できるわけではないと言ったらどうなるでしょうか? そう、この機能、実は すでに Android 7.X Nougat で動作しており、root アクセスも必要ありません。

フェイスパーム. 私が自分のことを書いたとき ナビゲーション バーを状況に応じて変更するチュートリアル Android O では、送信しているこれらのシェル コマンドは Android O でのみ機能すると思っていました。 それは真実ではないことが判明しました。これらのコマンドは実際には Android Nougat で問題なく動作します。 今、 私たちは知り合ってから9ヶ月近くになります Android Nougat ではナビゲーション バーのカスタマイズを有効にすることができますが、最初の検出ではユーザーが次のことを行う必要がありました。 SystemUI APKを変更するナビバーチューナー設定を公開する. これは、root アクセスが必要なだけでなく、更新ごとに SystemUI APK を逆コンパイルしてパッチを適用する必要があるため、多くのユーザーにとって明らかに克服すべき大きなハードルでした。 ただし、

必要 SystemUI を変更してこのナビゲーション バー チューナー アクティビティを公開するには、とにかくシェル コマンドを使用してナビゲーション バーを手動で変更できます。

警告: 一部のユーザーから、Google Pixel 上の最新の Android 7.1.2 ベータ版ビルドではナビゲーション バーのカスタマイズが機能しないという報告を受けています。 これらのコマンドは自己責任で試してください。 安全のため、このカスタマイズを試してみることをお勧めします paphonbが開発したアプリを使用 ADBコマンドではなく以下に投稿します。 彼のアプリで動作しない場合は、ADB コマンドを試さないでください。

Android Nougat のこの隠しナビゲーション バーのカスタマイズが次のデバイスで動作することを確認できます。

  • Googleネクサス6
  • Google Nexus 5X
  • Google ネクサス 6P
  • Googleピクセル
  • Google ピクセル XL
  • ワンプラス3
  • ワンプラス 3T
  • ソニーのXperia携帯電話

ナビゲーション バー カスタマイザーは、AOSP 実装を削除していないデバイスまたは ROM 上で動作するようです。 Android 7.X Nougat をベースにした標準ファームウェア、または標準ファームウェアに近いほとんどのデバイスでは、動作するはずです。


Android Nougat のナビゲーション バーを手動で変更する方法は、Android O での動作と非常によく似ています。 ADB シェル コマンドを送信して特定の設定を変更することも、次のようなアプリケーションに WRITE_SECURE_SETTINGS 権限を付与することもできます。 セキュアタスク または オートツール 設定の変更を制御できるようになります。 ナビゲーション バーのボタンを制御する安全な設定。 を使用すると、 タスカー、状況に応じてナビゲーション バーを変更することもできます。

SecureTask または AutoTools に WRITE_SECURE_SETTINGS を付与するのは簡単で、次の ADB シェル コマンドのいずれかを入力するだけで済みます。root 権限は必要ありません。

SecureTask の場合:

adbshellpmgrantcom.balda.securetaskandroid.permission.WRITE_SECURE_SETTINGS

オートツールの場合:

adbshellpmgrantcom.joaomgcd.autotoolsandroid.permission.WRITE_SECURE_SETTINGS

ナビゲーション バーを変更する構文は次のとおりです。

settings put secure sysui_nav_bar "key(KEYCODE_CONSTANT: file:///path/to/icon.png),back; home; recent, key(KEYCODE_CONSTANT: file:///path/to/icon.png)"

キーのレイアウトを再配置したり、左または右にスペースを追加してボタンを移動したりできます(入力 space 空のスロットがナビゲーション バーに追加されます) カスタム アイコンを選択し、キーコードを変更します。 この構文に従って自由に設定してください。 たとえば、これを追加するために使用するコマンドは次のとおりです。 キーコード_メニュー ボタンと KEYCODE_FORWARD ボタンをナビゲーション バーに追加すると、Chrome のブラウジング エクスペリエンスが向上します。

settings put secure sysui_nav_bar "key(82:file:///storage/emulated/0/NavIcons/menu.png),back; home; recent, key(125:file:///storage/emulated/0/NavIcons/forward.png)"

コマンドが参照するアイコン パスは、からダウンロードしたカスタム アイコンです。 アイコンDB. デバイスのディスプレイ密度を調べて、適切なアイコン サイズを取得しました。 マテリアル.io 次に、その密度を 参照チャートを使用した適切なアイコン サイズ.

ナビゲーション バーをデフォルトのレイアウトに戻したい場合は、次のコマンドを入力します。

settings put secure sysui_nav_bar "space, back; home; recent, space"

私の Android O チュートリアルをよく読んでいる人なら、この構文には見覚えがあるでしょう。 そうでなくても、心配する必要はありません。 そのためのアプリがあります。


カスタムナビゲーションバー

XDA 上級会員 パポーンブ と呼ばれるアプリケーションを開発しました カスタムナビゲーションバー これにより、すべての作業が自動的に行われ、ナビゲーション バーのボタンが変更されます。 このアプリは Android O のナビゲーション バー カスタマイザーに基づいているため、非常に使いやすいです。 ただし、アプリはカスタム アイコン (私のチュートリアルと同じように)、すぐに切り替えることができるプロファイルを作成する機能が含まれており、さらに Tasker のサポートにより、任意の基準に基づいてナビゲーション バーを状況に応じて変更できます。 欲しい。

アプリをインストールし、ADB で次のコマンドを発行して WRITE_SECURE_SETTINGS 権限を付与するだけです。

adbshellpmgrantxyz.paphonb.systemuitunerandroid.permission.WRITE_SECURE_SETTINGS

次に、アプリを開くと、デバイスがナビゲーション バーの変更をサポートしているかどうかがアプリによって判断されます。 ナビゲーション バーの中央に「次へ」キーを表示しようとします。 表示された場合は、ナビゲーション バーを変更できます。 そうでない場合、アプリは運が悪いと通知します。

アプリケーションは 無料 ただし、3 つ以上のプロファイルを作成する場合は、プロ バージョンを購入する必要があります。 このアプリケーションを使用すると、ナビゲーション バーの変更が確実に簡単になるため、個人的には価格に見合った価値があると思います。 ただし、ノウハウがあれば、このアプリが提供するすべての機能を Tasker と セキュアタスク/オートツール。


カスタマイズの可能性

このアプリ+Taskerでできることはたくさんあります。 そういった事例をたくさん紹介してきましたが、 私のチュートリアルでは, ただし、試してみることができるいくつかの簡単なリストを次に示します。

  • 音楽再生時にメディア再生コントロールを表示する
  • Gmail を使用しているときに進む/戻るキーを表示すると、メールをすばやく切り替えることができます
  • Chrome 使用時にページの上下スクロール キーを表示する
  • キーボードが表示されているときに左右のカーソルを表示します
  • Chrome使用時にメニュー/進むボタンを表示する
  • 通話中に連絡先のショートカットと通話終了ボタンを表示する

これらは、Android O のナビゲーション バー チューナーをいじっていたときに思いついたものですが、Android Nougat の隠しナビゲーション バー チューナーでも同じように機能するはずです。

このナビゲーション バー チューナーが Android Nougat で root なしで動作することを誰かが理解するのに、これほど長い時間がかかったのには本当に驚きました。 このことを振り返ってみると、root なしで動作するのはまったく理にかなっています。 結局のところ、SystemUI mod はナビゲーション バー チューナー アクティビティを起動するための設定フラグメントを公開するだけであり、その mod が実際に SystemUI に機能を追加するわけではありません。それは常に存在していました。 シェル コマンドを使用すると、この SystemUI アクティビティを公開せずにナビゲーション バーを変更できるだけですが、paphonb のアプリを使用すると、これがすべて簡単になります。


ナビゲーション バーをどのようにカスタマイズしますか? 以下のコメント欄でお知らせください。