android - onRequestPermissionsResult 正在片段下编译
问题描述
我正在从片段请求我的应用程序的运行时权限。我可以调用 requestPermissions。
requestPermissions(new String[]{Manifest.permission.READ_PHONE_STATE}, READ_PHONE_STATE_REQUEST_CODE);
但是当我添加 onRequestPermissionsResult 时,它没有编译并说“方法不会覆盖其超类中的方法。
@TargetApi(Build.VERSION_CODES.M)
@Override
public void onRequestPermissionsResult(int requestCode,
String permissions[], int[] grantResults) {
}
谁能帮我解决这个问题。
解决方案
在 onCreateView() 方法中添加以下代码以请求权限
ActivityCompat.requestPermissions(getActivity(), new String[]{Manifest.permission.READ_PHONE_STATE}, 1);
和
@Override
public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {
Log.v(TAG, "Permission: " + permissions[0] + "was " + grantResults[0]);
}
}
同样在您的清单中添加:
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
推荐阅读
- azure - Azure Log Analytics 排除的特定容器
- c++ - 如何访问静态函数 MouseProc、SetWindowsHookEx 中的 ui 结构(文本框、标签)?
- sql - 如何使用 IF 条件在 SQL 中交换两列值
- typescript - 如何查看 tsc 正在处理哪些文件?
- html - 从屏幕上的按钮 (html) 迭代数组
- javascript - Wemassembly 设置元标记
- sql - 减少 Postgres SQL 的执行时间
- c++ - 将 userInput(string) 转换为 UserInput(int) mid for 循环
- javascript - 有没有办法将数组元素添加到 formData 对象,所以 net core [FromForm] 会正确反序列化它们?
- python - 在 PRAW 中,有没有办法为多个用户获取评论流?