2

実行時のアクセス許可を使用して、バージョン 24 を対象とした SMS を送信しようとしています。Redmi Mi 3s デバイスでは SecurityException が発生しますが、Marshmallow OS を搭載した他のデバイスでは正常に動作します。

final int REQ_CODE = 100;
void requestPermission(){
    if (ActivityCompat.checkSelfPermission(this, Manifest.permission.SEND_SMS) != PackageManager.PERMISSION_GRANTED) {
        CTLogs.printLogs( "Permission is not granted, requesting");
        ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.SEND_SMS,Manifest.permission.READ_SMS,Manifest.permission.RECEIVE_SMS}, REQ_CODE);
       // button.setEnabled(false);
    } else {
        CTLogs.printLogs("Permission has been granted");
        sendSMS();
    }
}

@Override
public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
    if (requestCode == REQ_CODE) {
        if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
            CTLogs.printLogs("Permission has been granted");
            sendSMS();
           } else {
            CTLogs.printLogs("Permission denied !!!");
        }
    }
}
4

2 に答える 2