Android の音量ダイアログは、手動で画面をタップしない限り、消えるまでに 20 秒かかることに気づきましたか? その理由は次のとおりです。
音量ボタンを押したときに表示される音量ダイアログに少し時間がかかることに気づきましたか? あまりにも 自然に消えるのは長いですか? Android スマートフォンを初めて入手したときは、ユーザーが介入しなくても、音量ダイアログは数秒後に自動的に消えます。 その後、過去数日、数週間、または数か月のうちのある時点で、画面をタップしない限り、消えるまでに長い時間がかかるようになりました。 この問題に直面していて腹立たしい場合、あなたは一人ではありません。
この記事では、何が起こっているのか、なぜそれが起こるのかを説明します。これにより、問題を自分で解決するか、この記事を開発者に送信して修正してもらうことができます。 あなたが直面しているのと同じ問題を指していることが明らかになるように、最初に問題が何であるかを正確に説明しましょう。
問題
Android スマートフォンまたはタブレットの音量ボタンを押して音量を変更すると、音量が 表示されるダイアログは、画面をタップして表示しない限り、自然に消えるまでに時間がかかります。 消える。 音量ダイアログはどれくらいの間自動的に表示されますか? ちょうど20秒です。
クレジット: /u/コーンキャンディ
Reddit の /r/ にある人気のスレッドGoogleピクセル subreddit には多くのユーザーがこの問題に直面しているとの声を上げていました。 ただし、誰もがこの問題を抱えていたわけではありません。 一部のユーザーは、音量ダイアログが画面に 3 秒しか表示されなかったと述べていますが、これは正常な動作です。 では、何がこの問題を引き起こしたのでしょうか? このスレッドのほとんどのユーザーにとって、その原因は Signal Spy と呼ばれるアプリであることが判明しました。ただし、そのスレッドの一部のユーザーは、他のアプリもこの動作を引き起こしていると述べました。
価格:無料。
3.9.
Signal Spy は、Google の Project Fi サービスの加入者の間で人気のあるアプリです。 Project Fi ユーザーは、現在のネットワーク接続の分析と、Sprint と T-Mobile 間の自動切り替えをサポートしているため、このアプリを気に入っています。 一番良いところ? ネットワーク間を切り替えるために root アクセスは必要ありません。 Signal Spy は、アクセシビリティ サービス (通常、ユーザーを支援するために使用される Android のアクセシビリティ API を使用するサービス) を使用します。 障害のあるユーザー向けですが、何百もの通常のアプリでも使用されています)ダイヤラー コードを入力することで通信事業者を自動的に切り替えることができます。 ショートカット。
Project Fi でキャリア間を自動的に切り替える Signal Spy の機能は非常に便利ですが、これが Android の音量ダイアログの問題が発生する原因でもあります。 Signal Spy と、LastPass、Fingerprint Gestures、Zoho Vault、Amazon Assistant など、この問題が発生する他のアプリとの共通点は、 アクセシビリティ サービスを使用する. この問題を解決するには、[設定] --> [アクセシビリティ] に移動し、各アクセシビリティ サービスを 1 つずつオフにすることができます。 では、なぜ一部のアプリのユーザー補助サービスだけがこの問題を引き起こすのでしょうか? タスカーたとえば、 はこの問題に直面していませんし、私たち自身も同様です。 ナビゲーションジェスチャー アプリ。 あなたと他の多くの人が Google の問題トラッカー バグだと思うかもしれませんが、実際にはそうではありません - それは完全に仕様です.
説明
ナビゲーション ジェスチャー アプリの開発中に発見したように、アクセシビリティ サービスに アクセシビリティフィードバックタイプ に設定 FEEDBACK_GENERIC 以外. FEEDBACK_HAPTIC を使用するようにアクセシビリティ サービスを設定すると、音量ダイアログが 20 秒間画面上に表示されます。 FEEDBACK_GENERIC に設定すると、音量ダイアログが 3 秒間画面上に表示されます。
これが発生する理由は、次の 2 つの方法によるものです。 ボリュームダイアログの実装 AOSPで。 computeFeedbackEnabled と呼ばれる最初のメソッドは、「非汎用」の有効なユーザー補助サービスが存在するかどうかを確認します。 true の場合、ブール値 mFeedbackEnabled が true に設定されます。 2 番目のメソッド computeTimeoutH では、mFeedbackEnabled が true を返す場合、ボリューム ダイアログのタイムアウトは 20 秒に設定され、それ以外の場合は 3 秒に設定されます。
これらメソッド は Android 6.0 Marshmallow リリースで追加されたため、このボリューム ダイアログの問題は、Android Nougat、Android Oreo、Android Pie を含む Android Marshmallow 以降のすべての Android リリースに影響します。 完全にはわかりません なぜ これらのメソッドは、コミットの説明が明確ではなかったため追加されました。 この動作が存在する理由について推測を危険にさらさなければならないとしたら、これはユーザーを特定の方法で支援するためであると言えます。 障害者は、デフォルトの 3 秒のタイムアウトが短すぎるため、音声またはその他の入力による音量ダイアログを処理します。 彼らのために。 ユーザーが特定の種類のユーザー補助サービスを使用していることを Android が検出すると、ユーザーが操作できる可能性が高くなるように、音量ダイアログの滞在時間が自動的に延長されます。 いずれにせよ、この問題が問題であることは明らかです バグではありません しかしむしろ完全に 意図的に. 残念ながら、これは、Google に変更を説得する以外に、この問題を「修正」する方法はないことを意味します。 この決定を下すか、アクセシビリティで非汎用のフィードバック タイプを使用しないようにアプリ開発者を説得する必要があります。 サービス。
Signal Spy の開発者は、次のベータ リリースで問題を修正したことをすでに確認しているため、問題が発生し、修正されたかどうかを確認したい場合は、 アプリ開発者がこの問題を認識できるよう、この記事を紹介する必要があります (多くの人は気づいていませんが)。Android の将来のバージョンでこの動作が変更される場合は、皆さんにお知らせします。 知る。 少なくとも、この問題とその原因はわかったので、どのアプリがこの問題を引き起こしているのかを特定できるようになります。