在詢問用戶運行時權限的同時,獲取以下覆蓋對話框。 在請求運行時權限時關閉應用程序
下面是我的代碼:
if(ContextCompat.checkSelfPermission(MainActivity.this,permissions) == PackageManager.PERMISSION_DENIED) {
if (ActivityCompat.shouldShowRequestPermissionRationale(MainActivity.this, permissions)) {
ActivityCompat.requestPermissions(MainActivity.this,new String[] {permissions}, requestCode);
} else
Toast.makeText(MainActivity.this,"Need Permission",Toast.LENGTH_LONG);
}
清單
<uses-permission android:name="android.permission.CALL_PHONE" />
許可,我請求是CALL_PHONE。
TIA
你在清單申報呢? – Alessio
另外,您錯誤地使用了shouldShowRequestPermissionRationale(),因爲它第一次會是false,然後是true,然後再次是false。您應該在checkSelfPermission()調用後立即從第一次直接調用ActivityCompat.requestPermissions()。至少讀過Android [示例](https://developer.android.com/training/permissions/requesting.html),還有代碼片段。這是非常基本的。 – Alessio
崩潰日誌在哪裏?請包括它。 – Tigger