2016-04-09 3 views
-2

は、私の許可チェックダイアログが毎回を示しているが、それは一度だけ表示される必要があります。毎回ダイアログが表示されますか?何らかの理由で

私は私のonCreate()におけるSMSの許可をチェックし、次のコードがあります。

if (ContextCompat.checkSelfPermission(MainActivity.this, 
       Manifest.permission.READ_CONTACTS) 
       != PackageManager.PERMISSION_GRANTED) { 

      // Should we show an explanation? 
      if (ActivityCompat.shouldShowRequestPermissionRationale(MainActivity.this, 
        Manifest.permission.SEND_SMS)) { 

       Toast.makeText(MainActivity.this, "You should enable", Toast.LENGTH_SHORT).show(); 

       /*ActivityCompat.requestPermissions(MainActivity.this, 
         new String[]{Manifest.permission.SEND_SMS}, 1001 
       );*/ 


      } else { 

       // No explanation needed, we can request the permission. 

       ActivityCompat.requestPermissions(MainActivity.this, 
         new String[]{Manifest.permission.SEND_SMS}, 1 
         ); 
      } 
     } 

を問題がありますユーザーを有効にしても、onCreateで有効になると、次回ユーザーがアプリを開くときに許可ダイアログが表示されます。パーミッションは与えられてはならず、ダイアログは再び表示されませんか?

+0

をチェックされています –

答えて

1

あなたが `READ_CONTACTS`をチェックすると、` SEND_SMS`を要求しているManifest.permission.READ_CONTACTSの代わりManifest.permission.SEND_SMS