java - Android 11 运行时存储权限
问题描述
Android 11 (R) 跳过了我的许可请求,但所有工作都在未经许可的情况下进行。我在下面给出了我的代码。我尝试了很多代码,但无法正常工作。请帮我
int m_permit = ActivityCompat.checkSelfPermission(activity, Manifest.permission.WRITE_EXTERNAL_STORAGE);
if (m_permit != PackageManager.PERMISSION_GRANTED){
Permission(context);
}
public void Permission(Context context) {
final Dialog dialog;
final Activity activity = (Activity) context;
LayoutInflater li = LayoutInflater.from(context);
View view= li.inflate(R.layout.dialog_permission, null);
dialog = new Dialog(context, R.style.Theme_AppCompat_Light_Dialog);
dialog.setContentView(view);
TextView ok = view.findViewById(R.id.ok);
dialog.show();
ok.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
dialog.dismiss();
int m_permit = ActivityCompat.checkSelfPermission(activity, Manifest.permission.WRITE_EXTERNAL_STORAGE);
if (m_permit != PackageManager.PERMISSION_GRANTED) {
requestPermissions(activity,
STORAGE_PERMISSION,
1);
}
}
});
}
解决方案
推荐阅读
- ios - 无法获得蓝牙外设特性的值(但在 Wireshark 中找到)
- controls - Html 5 视频控件使我无法使用导航的下拉菜单
- sql - 动态 SQL 中的除法运算符(正斜杠) - 需要 PL/SQL 等效项
- c# - 在 C# 中使用 AES 进行确定性加密
- xml - PyZillow 不返回属性详细信息
- azure - 具有长期 Azure Functions 的 Azure 数据工厂
- javascript - 谷歌图表调试
- python - 通过使用条件添加列来创建列
- android - 如何将 android MediaRecorder 输出转换为 MP3 文件
- ios - 如何仅在较小的设备上隐藏状态栏?