この ADB コマンドを使用して Android アプリの振動を停止する

簡単な ADB コマンドを使用して、携帯電話上の Android アプリの振動を停止する方法に関するチュートリアル。 振動する広告や不要なゲームの振動を排除します。

オンライン広告は、ユーザーをイライラさせる新たな方法を模索し続けています。 ここ数年、特定の形式のオンライン広告がモバイル デバイスを悩ませてきました。それは振動広告です。 の使用 振動API、広告が携帯電話を振動させています 迷惑そうにあなたの注意を引く. この問題は、 何年も前から知られている、しかしGoogleは問題を解決するのが非常に遅かったです。 Chrome バージョン 60 でのみ振動広告が廃止されますが、現時点ではバージョン 60 は Chrome の Beta、Dev、Canary チャネルでのみ利用可能です。 ただし、実際には手動で振動を止める方法があります。 どれでも 携帯電話を完全にサイレント モードにすることなく、携帯電話上の Android アプリを使用できます。 つまり、アプリケーション開発者がアプリを更新して携帯電話を振動させないようにするのを待つ必要がなくなります。


Android アプリの振動を停止する

私たちが行っている方法は非常に簡単です。 ここで行うのは、ADB コマンドを送信して、アプリがデバイスの振動モーターを使用できるようにする権限を制限することだけです。 そうすることで、アプリは携帯電話を振動させることができなくなります。 始める前に、携帯電話の振動を停止したいアプリのパッケージ名を確認できるように、アプリケーションをインストールする必要があります。 心配しないでください。これは完全に無料 (そして小規模な) アプリです。

アプリインスペクター開発者: UBQソフト

価格:無料。

4.2.

ダウンロード
  1. USB ドライバーをインストールします。 特定のデバイス、おそらく Windows を使用している場合にのみ必要です。
  2. ダウンロード ADBバイナリ あなたのOS用に。
  3. ZIP ファイルをダウンロードなどの簡単にアクセスできるフォルダーに解凍します。
  4. 携帯電話の「設定」に移動し、「電話について」オプションを見つけます。
  5. ここで「ビルド番号」の値を見つけ、それを 7 回タップして開発者モードを有効にします。
  6. 設定のメインメニューに戻り、開発者向けオプションを入力します。
  7. USB デバッグ モードを有効にします。
  8. 携帯電話をコンピュータに接続し、「充電のみ」モードから「ファイル転送 (MTP)」モードに変更します。 これは常に必要なわけではありませんが、ADB が動作するためにデバイスで必要になる場合があります。
  9. PC に戻り、前に ADB バイナリを抽出したディレクトリに移動します。
  10. この ADB ディレクトリでコマンド プロンプト (Mac/Linux のターミナル) を起動します。 Windows では、これを行う最も速い方法は、Shift キーを押しながら右クリックすることです。 表示されるコンテキスト メニューで、[ここでコマンド プロンプトを開く] オプションを選択します。
  11. コマンド プロンプトまたはターミナルで次のコマンドを入力して、デバイスに接続できることを確認します。 adb devices
  12. これにより、ADB デーモンが起動します。 ADB を初めて実行する場合は、接続の承認を求めるプロンプトが表示されます。 許す。
  13. ここでステップ 11 のコマンドを再実行すると、出力にデバイスのシリアル番号が表示されます。 そうであれば、次に進む準備は完了です。 そうでない場合は、ドライバーを再インストールしてみてください。
  14. アプリ インスペクターを開いてアプリ リストに移動し、アプリをタップして、携帯電話の振動を制限したいアプリのパッケージを見つけます。
  15. 次のコマンドを実行して、電話機のシェル環境に入ります。 adb shell
  16. 次に、次のコマンドを実行して、アプリによる振動モーターの使用を制限します。 cmd appops set VIBRATE ignore
  17. プロンプトには確認は表示されませんが、エラー メッセージが表示されない限り、正常に動作しているはずです。

説明

ここで私たちがやっているのは許可を制限することです android.permission.VIBRATE 私たちが選んだアプリケーションから。 この権限はアプリケーションによって定義されます。 AndroidManifest.xml ファイルを作成し、インストール時にアプリケーションが自動的に許可されます。 組み込みの権限マネージャーを使用してアプリケーションからの一部の権限を制限できますが、VIBRATE 権限はその 1 つではありません。

代わりに、を使用してこの権限を制限します。 cmd appops 指示。 これは、Android のユーザー向け権限管理システムである「appops」へのコマンド ライン インターフェイスです。 ADB シェルを通じてこのシステムにアクセスすると、通常よりも多くの権限を制限できるようになります。 取り消すことができる権限の 1 つは、VIBRATE 権限です。 そうすることで、必要な許可なしにアプリケーションが携帯電話の振動モーターを使用できなくなるため、振動が停止します。

Google は、ユーザーが通常この権限を制限できることを望まないため、設定からこの権限を非表示にしました。 これは、多くのアプリが、特定のアクションに対する触覚フィードバックや何かの通知など、正当な理由で携帯電話の振動に依存しているためです。 Googleは、開発者が携帯電話に振動モーターがない場合にアプリがどのように動作するかをテストできるように、アプリが携帯電話を振動させないようにコマンドライン機能を残しました。 ただし、振動モーターを備えていないデバイスは非常にまれであるため、このコマンドはほとんど使用されません。

ただし、この隠しコマンドが開発者によって使用されていないからといって、有効に活用できないわけではありません。 実際、このコマンドのおかげで、Android アプリの振動を再び停止することができます。 Google が Chrome 安定版を更新したり、Opera が Opera Mini を更新したりするのを待つ必要はありません。今すぐ自分で振動広告を停止できます。 さらに、携帯電話を振動させすぎて頭痛を引き起こすアプリを知っている場合 (そしてそのアプリではそれをオフにすることはできません)、これを防ぐこともできます。 次に期待したいのは、Google Chrome です。 広告ブロッカー このような種類の広告を無効にしますが、 テストまで数日 その新機能。