通知が表示されているときにユーザーが権限を付与しようとすると、Androidの「画面オーバーレイが検出されました」というメッセージが表示されます


80

Nexus6にAndroidMarshmallowをインストールしています。次の問題を修正しようとしています。

通知の表示中にユーザーが権限を付与しようとすると、「画面オーバーレイが検出されました」というメッセージが表示され、[権限のリクエスト]ダイアログが消えます。もちろん、アプリはリクエストされた権限を取得しません。(スクリーンショットを確認してください)

「DRAWOVEROTHER APPS」権限(android.permission.SYSTEM_ALERT_WINDOW)をマニフェストに追加して問題を修正しようとしましたが、うまくいきませんでした。

PS:問題の原因は通知だと思います。他のアプリをオーバーレイするアプリをインストールしていません。設定で[他のアプリを描画する]権限を持つすべてのアプリをオフにしました。助けにはならなかった。

誰かがその問題の解決策を知っていますか?

ここに画像の説明を入力してください



@gsgsgs他のアプリに重なるアプリはありません。とにかく、設定で「他のアプリの上に描画」権限を持つすべてのアプリをオフにしました。助けにはならなかった。質問で述べたように、問題の原因はアプリではなく通知です。
Alexi Akl 2016

2
これは、コードで「修正」するためのものではありません。これはAndroidのバグ(またはせいぜい、よく考えられていないエラーメッセージ)であり、Googleは将来のリリースで修正する必要があります。
学ぶ

3
Facebookメッセンジャーが開いているときに私に起こります(バックグラウンドで)
Tim

1
これは、トーストが表示されている場合にも発生します。
グリー2016年

回答:


75

私が遭遇した状況では、私は自分で問題を引き起こしていました。これは、Toast許可を求めると同時に、を使用してユーザーに情報を表示した結果です。これらのアクションの両方が一緒になって、このタイプのエラーを引き起こします。

他の答えは他の誰かの問題を解決するかもしれません。ただし、独自のオーバーレイエラーが発生する場合は注意が必要です。ビューに何かを重ねると同時に許可を求めることに注意してください。


4
同じ問題に直面しました。トーストを取り外したところ、表示されなくなりました。
shijin 2017

1
同じに直面した。トーストを削除し、魅力のように機能しました
デニスアンダーソン

1
このソリューションで解決されたのとまったく同じ問題。許可を求める直前に乾杯のメッセージを見せていました。
sandoval0992 2017

これは私にとって解決しました。Toastデバッグに使用していました。これはまた人々がこれを持っている主な理由かもしれません。

Toast to display information to the user at the same time that I was asking for permission私を助けてくれ...
シャイレンドラMadda

8

CleanMasterアプリをアンインストールします。アンインストールして問題を解決しました


2
私はこれを試しましたが、役に立ちませんでした。それどころか、それは不必要なアンインストールを引き起こしました。
user3251882 2016

1
私はこれを試しました、それ助けになりました。それは必要なアンインストールを引き起こしました。ありがとう!(Sony Xperia Z3)
Justin

1
アンインストールは解決策ではありません。正解については、stackoverflow.com / a / 39826828/2724626を確認してください。
akshay 2016年

私の場合はFacebook Messenger、アンインストールする必要はなく、強制的に停止するだけでした。
Hamzeh Soboh 2017

5

この問題は、Twilight、cleaner-master、drupeなどの原因となるアプリケーションが原因で発生します。

この問題を解決するには、これらの原因アプリの画面オーバーレイを無効にする必要があります。

私はモトg4プラスを持っています、そしてこれは私がこの問題を解決する方法です

[設定]-> [アプリの選択] ---> [アプリ]の設定アイコンをもう一度選択します---> [他のアプリの上に描画]を選択します--->他のアプリで問題が発生した原因のアプリを無効にします。

私が行ったのは、この権限を無効にして各アプリをチェックし、アプリを実行しようとしたところ、1つのアプリが他のアプリのこの厄介なオーバーレイであることがわかったため、最後にこのアプリのみを無効にしました。

スクリーンショット:

アプリを選択 設定の構成を選択します

他のアプリの上に描画を選択します犯人アプリを無効にする


MobileGoConnectorとMobileGoが私のモバイルに表示されない
Keshav Gera

私は今何をすべきか
Keshav Gera 2017

1
@KeshavGeraそれは決して..bczは内部アプリケーションではなく、外部にインストールしました。あなたにとって、オーバーレイの問題を引き起こすのは別のアプリになります。私の場合、この2つのアプリケーションがオーバーレイの問題を引き起こします。
Sagar Chavada 2017

@KeshavGeraあなたはオーバーレイ許可..無効にすることで、それぞれのアプリをチェックする必要があります
サーガルChavada

3

ここや他のフォーラムの複数の回答から洞察を得ました。

私が問題をどのように取り除いたかを統合する:

  1. [設定]> [アプリ]>(問題が発生しているアプリ)に移動します
  2. 電源オフ、再起動、機内モードが表示されるウィンドウまで電源ボタンを押します
  3. ホールドオンパワーオ​​フオプション
  4. セーフモードで再起動を選択します
  5. [設定]> [アプリ]>(問題が発生しているアプリ)に移動します
  6. 必要な権限を選択してください
  7. Android Mのアップデート後、Messenger、Whatsapp、Prismaなどのアプリで問題が発生する可能性があります。

問題があれば教えてください。

注:私はOne plusOneモバイルを持っています。


1
しかし、私たち開発者は、この(セーフモードでの再起動)アプローチではなく、コーディングによってソリューションを解決することを望んでいます。
Rakesh Yadav 2017年

あなたは正しいRakeshです、これは理想的な解決策ではありません。しかし、今日まで、私は自分の携帯電話で機能する他の解決策を持っていません。
user3251882 2017年

今のところ私のために働いた!グーグルがNougat +リリースでそれを修正することを期待しましょう。
Surendra Kumar

1

アプリを削除して、Nexus6Pの電源を切りました。オンに戻した後、アプリを再インストールしましたが、アプリに権限を付与するときに「画面オーバーレイ」ダイアログが表示されなくなりました。


1
これは答えよりもコメントに近いです。これが機能する理由を少し拡張できます。回答方法
AgataB 2016

1
@AgataBStackOverflowは初めてです。当時、私にはコメントする権利がなく、電話の電源を切ってアプリをアンインストールすることがなぜうまくいくのかわかりませんでした。それが役立つかもしれないと思っただけです。
大学生

1

このポップアップは、マニフェストによって宣言されたmanifest.PERMISSION.SYSTEM_ALERT_WINDOW権限が原因で発生します。

開発者が知っておく必要のある権限には、次の3つのカテゴリがあります。

通常の許可-マニフェストで宣言するだけで、何もしません

脆弱な許可-マニフェストで宣言し、最初に許可を求めます。これらは、システム設定を通じて変更できます。

上記の危険な権限:SYSTEM_ALERT_WINDOWおよびWRITE_SETTINGSはこのカテゴリに属します。これらは許可する必要がありますが、システム設定には表示されません。それを要求するには、標準的な方法(int checkSelfPermission(Stringpermission))を使用しませんが、Settings.canDrawOverlays()またはSettings.System.canWrite()を適切にチェックする必要があります。そうしないと、次のような例外が発生します。

ウィンドウを追加できませんandroid.view.ViewRootImpl$W@1de28ad-このウィンドウタイプの権限が拒否されました

1-以下に示すように、コードでこの許可を自分でリクエストします。

public class MainActivity extends AppCompatActivity {

public final static int REQUEST_CODE = 10000;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    if (checkDrawOverlayPermission()) {
          Toast.makeText(this, "Permission granted", Toast.LENGTH_SHORT).show();
    }
}

public boolean checkDrawOverlayPermission() {
    if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) {
        return true;
    }
    if (!Settings.canDrawOverlays(this)) {
        Intent intent = new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION,
            Uri.parse("package:" + getPackageName()));
        startActivityForResult(intent, REQUEST_CODE);
        return false;
    } else {
        return true;
    }
}

@Override
@TargetApi(Build.VERSION_CODES.M)
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (requestCode == REQUEST_CODE) {
        if (Settings.canDrawOverlays(this)) {
              Toast.makeText(this, "Permission granted", Toast.LENGTH_SHORT).show();
        }
    }
}

0

リストに表示されるすべてのアプリのオーバーレイを無効にする必要があります。この方法でのみ、必要なアプリの権限を変更できます。私はそれをセーフモードで実行しましたが、機能しました。最後に私は電話を再起動しました、そして今それはうまく働いています。


0

Sony Xperia Z3(Dual Sim)をAndroid 6.0.1(Marsmallow)にアップデートしました。画面オーバーレイの問題が発生しています。私にとって、私はClean Master、Du Speed、またはDu Boosterを持っていません(私が読んだ解決策として)。

だから私はスクリーンオーバーレイアプリを探して解決しました。

画面オーバーラップアプリは、ホーム画面を離れることなく、メインのホーム画面で他のアプリにアクセスするために使用できるアプリです。だから私にとって、私の状況でのスクリーンオーバーレイアプリはOMNISWIPEでした。したがって、この問題に直面している場合は、落ち着いて、どのアプリが画面オーバーレイアプリの定義に適合するかを確認する必要があります。

アプリを見つけてアンインストールし、電話を再起動します。

私はこれを終えたばかりで、電話で楽しい時間を過ごしています

幸運を祈ります


0

この「オーバーレイアラート」が理由もなく表示される一部のデバイスでAndroid6.xにバグがある限り(私の分析データによると、デバイスの2〜5%で)、最善の解決策は、許可プロセス全体を回避することです。 targetSdkを22に定義します。

新しいバージョンのターゲットSDKをダウングレードできないように注意してください。ダウングレードすると、ユーザーがアプリのunisntall / installを必要とする更新時に、INSTALL_FAILED_PERMISSION_DOWNGRADEエラーが発生します。



0

これは、悪意のあるアプリにオーバーレイ権限を付与した場合に発生します。オーバーレイ設定に移動し、Googleに属していないすべてのアプリでオーバーレイ機能を無効にすると、準備が整います。


-1

新しいアプリをインストールするときにこの問題が発生しました。この問題を回避する方法は、新しくインストールしたアプリの権限を手動で有効にすることです(アプリを実行する前に)。これは特にAndroidとSamsungデバイスの問題だと確信しています。お役に立てれば


-4
  1. CMセキュリティ、クリーンマスターなどの画面オーバーレイを持つアプリを削除します。

  2. 必要に応じて、メッセンジャー(FBアプリ)を削除して試してみてください。


私はこれを試しましたが、役に立ちませんでした。それどころか、それは不必要なアンインストールを引き起こしました。
user3251882 2016

そもそもアプリがインストールされた理由がある場合があります。
Alen Siljak 2016

番号。CleanMasterアプリやFacebookメッセンジャーアプリを再インストールするだけです。これは私にとって問題を解決しました。
Omkar Nibandhe 2016年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.