★本稿の内容はadb
shellコマンドを使ってAndroidのシステムの設定を変更するので自己責任でお願いします。
Button Mapperを使った物理ボタンをスマートホームのトリガーにする方法はこちらで紹介しましたが、その方法はAndroid端末がスリープモードになってしまうとButton
Mapperが無効になってしまう方法でした。
今回はButton MapperをインストールしているAndroid端末(ここではAndroid TV
BOX)にPCを接続してadb
shellコマンドを使ってAndroidシステムの設定を変更し、端末がスリープ中もButton
Mapperが有効になる方法を紹介します。
■スリープ中にButton Mapperを有効にするAndroidシステムの変更方法
●使用するアプリ
- Button Mapper: Remap your keys (- Google Play)(Android アプリ)
- adbLink (Windows PC アプリ)
●設定方法
1. Button Mapperの設定(adb shellコマンドの取得)
Button Mapperのメニュー画面の下の方にある『Setting permission』を選択します。
開いた『詳細設定』の画面で『WINDOWS』を選択します。
開いた『USBデバッグを有効にする』の画面は右にスワイプします。
出てきた『PCにセットアップツールをダウンロードしてください』の画面で、ツールをダウンロードせずに『MacかLinuxを使用していますか?ここをタップしてください。』を選択します。(これはAndroid TV
BOXがPCとUSBケーブルで接続できなかったのでこのようにしています。Android端末とPCがUSBケーブルで接続できる場合はツールをダウンロードしても問題なく設定できると思います。)
開いた『ADBセットアップ』の画面で下段の緑色のコマンドをコピー(またはメモ)します。
画像が荒くて上図ではよく見えませんが
『./adb shell pm grant flar2.homebutton
android.permission.WRITE_SECURE_SETTINGS』
と記載してあるはずです。(【重要】私の打ち間違えの可能性があるので上記のコマンドは絶対にコピペしないでください。必ずここまで紹介した方法でButton
Mapperから取得してください。)
以上で、Button Mapper側でやることは完了です。
2. PC側での設定
次にPCから(上で取得した)コマンドを使ってAndroid端末の設定を変更します。
先ずPCでadbLinkを起動し、Android端末に接続して『ADB
Shell』ボタンを選択します。
ここで先程Button
Mapperで取得したコマンドを入力するのですが、取得したコマンド(./adb shell pm
grant flar2.homebutton android.permission.WRITE_SECURE_SETTINGS)のウチ『./adb shell 』を除いた部分『pm grant flar2.homebutton
android.permission.WRITE_SECURE_SETTINGS』を入力します。
コマンドが実行され、元のプロンプト『(Android端末名):/
$』が表示されればコマンドの実行完了です。
以上で全ての設定は完了です。試しにAndroid端末に戻ってButton Mapperを起動するとメニュー画面から『Setting permission』の項目が消えており、設定が完了したことが分かります。
以上で全ての設定は完了です。試しにAndroid端末に戻ってButton Mapperを起動するとメニュー画面から『Setting permission』の項目が消えており、設定が完了したことが分かります。
Android端末がスリープ状態でもButton
Mapperが有効になっているはずです。確認してみてください。
参照サイト
【おまけ情報】USB type A - type Aケーブル
PCとAndroid TV BOXをUSB type A - USB type
Aの特殊ケーブルで接続してみましたがadbLinkではAndroid TV
BOXを認識できませんでした。
ちなみにどちらも壊れてません。(笑)