一:申請方式:
String ACTION_MANAGE_OVERLAY_PERMISSION = "android.settings.action.MANAGE_OVERLAY_PERMISSION";
Intent intent = new Intent(ACTION_MANAGE_OVERLAY_PERMISSION, Uri.parse("package:" + getPackageName()));
startActivityForResult(intent,5004);
二:重載方法監聽Intent返回值:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// 當otherActivity中返回數據的時候,會響應此方法
// requestCode和resultCode必須與請求startActivityForResult()和返回setResult()的時候傳入的值一致。
if(Settings.canDrawOverlays(this.m_instance))
{
StartVoiceInit();
}else
{
//如果沒有賦予權限則強制賦權
String ACTION_MANAGE_OVERLAY_PERMISSION = "android.settings.action.MANAGE_OVERLAY_PERMISSION";
Intent intent = new Intent(ACTION_MANAGE_OVERLAY_PERMISSION, Uri.parse("package:" + getPackageName()));
startActivityForResult(intent,5004);
}
}