2016-06-15 11 views
39

Android Marshmallowの最新アップデートをインストールしたデバイス(June2016アップデート)では、権限を要求すると[ALLOW]ボタンが機能しません。アップデート後にALLOWボタンが動作しない

- (MOB30M、Androidのバージョン6.0.1ビルド番号)

ネクサス7(MTC19V - - ビルド番号、6.0.1 Andoid版)

ネクサス6P:

私はこれらの2つのデバイスを使用してテストしています

両方とも最新のアップデートを持っており、権限を要求するとダイアログが表示されますが、[許可]ボタンを押すことはできません。この問題を解決する方法について

public void showPermissionsDialog() { 
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { 
     int hasWriteExternalStoragePermission = activity.checkSelfPermission(android.Manifest.permission.WRITE_EXTERNAL_STORAGE); 
     int hasWriteGetAccountsPermission = activity.checkSelfPermission(android.Manifest.permission.GET_ACCOUNTS); 

     if (hasWriteExternalStoragePermission != PackageManager.PERMISSION_GRANTED || hasWriteGetAccountsPermission != PackageManager.PERMISSION_GRANTED) { 
      activity.requestPermissions(new String[]{android.Manifest.permission.WRITE_EXTERNAL_STORAGE, android.Manifest.permission.GET_ACCOUNTS}, MainActivity.REQUEST_CODE_ASK_PERMISSIONS); 
     } else { 
      isAllPermissionsGranted = true; 
     } 
    } else { 
     isAllPermissionsGranted = true; 
    } 

} 



    @Override 
    public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) { 
     if (requestCode == REQUEST_CODE_ASK_PERMISSIONS) { 
      if (grantResults.length > 0) { 
       boolean isAllPermissionsGranted = true; 
       for (int i = 0; i < grantResults.length; i++) { 
        if (grantResults[i] != PackageManager.PERMISSION_GRANTED) { 
         isAllPermissionsGranted = false; 
        } 
       } 

       if (isAllPermissionsGranted) { 
        this.isAllPermissionsGranted = true; 
       } else { 
        android.widget.Toast.makeText(this, "Please, grand permissions", android.widget.Toast.LENGTH_LONG).show(); 
        showPermissionsDialog(); 
       } 
      } 
     } 
    } 

任意の提案:ここ

は、私は、要求の許可に使用すること、コードのですか?前もって感謝します!

EDIT

HereはGoogleにバグレポートです。私たちはまだGoogleからの修正を待っています。

EDIT 1

この問題は修正されました!

+0

uはonRequestPermissionsResultオーバーライドしなかった自分の設定では、この問題、無効にISWIPE機能を引き起こしていました? –

+0

はい、もちろん...コードを追加します – hakobyanheghine

+0

午前中に同じコードセットがうまく動作していて、アップデート後に[許可]ボタンをクリックしないとOSが更新されました。何か解決策が見つかったら教えてください。 –

答えて

55

編集:それは最後のアンドロイドの欠陥としてマークされており、今後のOSリリースで修正される予定です。 Bug report

EDIT 2:ファイルマネージャーが自分のアプリでこの機能を修正したことをメールします。私はもはやファイルマネージャーを試していないが、あなたがこの問題をもはや与えることはありませんアプリを更新する場合。しかし、基本的にこの動作は、アンドロイドがそれを修正するまで、間違った方法でオーバーレイを行っているアプリからである可能性があります。

私はついにそれを得ました(少なくとも私の場合)... f **** File Managerアプリのサービス。サービスが停止している場合は、再度アクセス許可が適用されます。

https://play.google.com/store/apps/details?id=com.rhmsoft.fm

私は「MOB30M」と問題なく動作する(これをプログラムすることが私の毎日の仕事である)のランタイム許可を更新する前にこのアプリを持っていたし、私は解放を置くために、ファイルマネージャを使用していますAPKを電話機の中に入れて実行し、APKをインストールします。今日私がインストールしたアプリはありません。

私が資金面で懸念しているのは、1つのアプリがすべての権限システムをクラッシュさせるということです。

それだと私はアプリがダイアログを改ざんするために使用される可能性があるので許可制度は、クラッシュしていないことを理解し、しかし、その後、アンドロイド(グーグル)のアプリを持っていることを教えてはいけません

過度な問題あなたがアプリに権限を与えたい場合は、XXXXアプリをアンインストールする必要がありますか?私はユーザーエクスペリエンスのために意味します。

通常のユーザは、彼の携帯電話が壊れていると思うだろうし、おそらくGoogleに戻って電話を送信したりキャリアのxD

はカントアンドロイドはこれを改善する、のは、正直言ってみましょう、さあ?あなたはあなたの携帯電話がこの動作を持っている根拠がないようにはありません(私の電話は根っからない)。あなたに何が起こっているのか知らせない場合、壊れているようです

+0

うわー、ありがとうあなたはそうしてくれましたが、それはうまくいったのですが、あなたが言ったように、1つのアプリがこれを行うことができてとてもひどいです。 – Dullahan

+0

@hakobyanheghineこれを試しましたか? –

+1

@JavierVieira私はちょうど試して、それは動作します!ありがとうございました!うまくいけば、私のアプリがライブになる前にこの問題を修正することを願っています – hakobyanheghine

-2

File Managerをアンインストールしてもう一度ダウンロードすると、「許可」ボタンが突然再び機能します。

+2

これは正当な答えではありません。サービスをアンインストールすると停止します。もう一度インストールすると、サービスを再開するまでサービスが実行されません。あなたがそうすると、アプリケーションのサービスは、再度許可システムを再起動するようになります。また、それはファイルマネージャのためではないかもしれません....それはオーバーレイをしているどのアプリケーションでもあります。 Otは公式にAndroidの最終更新で欠陥としてマークされており、Androidチームによって修正される –

+0

私は@JavierVieiraに同意しますが、完全に問題を解決するわけではないので、アンインストールはできません。 googleからの次のセキュリティパッチ。 – Dullahan

0

を働いている私は同じ問題を報告しようとしていましたが、ここでそれが既に登録されて、私は2ヶ月以降、これを直面しています、全く分からない理由が、「許可」ボタン私のNEXUS 6P電話機でも動作しません。 この問題は、ネクサスシリーズでのみ実行されているようです

@Googleとアンドロイドチーム:この問題に直面している回数については、実際に何度も迷惑を掛けています。手動で権限を設定するための回避策の設定。

その本当に愚かなバグ:私の場合は/

関連する問題