確認すべきはオーバーレイ表示するアプリ。
今回の場合は、Navigation Dockなる機能が邪魔していた。
先日、中国人の友人がHuawei P20を購入した。アメリカでは公式に流通していないため、ebayのセラーから買ったそうな。で、バックドアアプリが仕掛けらていないか確認してほしいと相談された。Huawei機はあまり触ったことがない と思ったけど母がP9 liteを買ったときに一通り設定した気がする ので、せっかくなので引き受けることにした。
自分の感覚だったら本気でバックドアを避けるならHuawei機は選ばないけれど、そこは個人の問題。あと、日本人にとっては、不正な通信といえば中国のサーバーに送られるものだという固定観念がありそうだけど、中国人の感覚ではそのへんどうなんだろう。繊細な話題なので訊きづらい。
閑話休題。どうやって確認するか。おそらく、通信ログを取得して不審なやりとりがないかを確認するのが正攻法だと思う。ただし検証にはそれなりに時間がかかるので、今回は見送った。自分の機種だったら時間がかかってもいいけど、他人のだから。代わりに、スマホにインストールされているアプリの一覧を取得して怪しいものがないか目視確認した。結果としては、それらしいアプリは見当たらなかった。
手順としてはなんてことはなく、設定アプリの端末情報からビルド番号を連打して開発者オプションを開放したら、USBデバッグを有効化。adbを使えるようにしたパソコンに接続し、以下のコマンドを叩くだけ。ちなみに自分の環境はWindows 10なので、使用したのはコマンドプロンプト。
adb shell pm list packages -s
そうすると、インストールされているアプリの一覧が表示される。ところで自分はAndroid Studioを導入した都合で環境パスを通したりしているけれど、adbを使うことだけが目的ならこのあたりを導入すればいいんじゃなかろうか。
…という手順が浮かんだから試したものの、どうもHuawei P20側でadbデバッグの許可が降りない。
初めて接続したパソコンからadbコマンドを実行する場合、不正な操作を防ぐため、Android機でadbデバッグを許可する必要がある。それはわかっているけれど、許可するボタンをタップしても、以下のトースト通知が出て進めない。
Because an app is obscuring a permission request settings can't verify your response
ちなみにこれは英語環境なので、日本語環境ではおそらく同じような意味の日本語の通知が出る。
さて、どうするか。自分の直感に相談したところ、オーバーレイアプリが邪魔しているとのこと。そういえば、APKファイルをPlay Storeの外から直接インストールするときなんかも同じように怒られることがある。数年前にはBattery Mixあたりの名前をよく聞いた。最近では、ブルーライトをカットするためのフィルタアプリとかかな。
他人のスマホでそんなものを特定するのは骨が折れそう。幸いまだアプリもそれほどインストールされていない状態なので、とりあえず何らかのシステムアプリが原因だと推測。結果として、今回の場合はHuaweiのROMであるEMUIに搭載されているNavigation Dockという機能が邪魔していた。よく知らないけれど、おそらくiOS機でいうAssistive Touchみたいなものだと思う。設定アプリのどこかにあるSystem Navigationの設定から無効化することができた。
ところで最近のモバイルOSは設定アプリに検索機能がつくようになった。便利なんだろうなとは思うのだけれど、目的の機能が検索に引っかからないこともよくあり、結局記憶に任せて自分で辿りついてしまう。なんだかなあ。