[英]Not showing Runtime Permissions Dialog in a particular Fragment
运行时权限对话框未显示在特定片段中。 例如,有5个碎片。 在One Fragment中有一张地图。 当用户点击特定片段时,该对话框应弹出给用户。
到目前为止,我所做的是: -
if (Prefs.getLatitude(getActivity()).equalsIgnoreCase("") && Prefs.getLongitude(getActivity()).equalsIgnoreCase("")) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
mCheckPermissionP();
}
mCheckPermissionP()包含以下代码: -
public void mCheckPermissionP() {
if (ActivityCompat.checkSelfPermission(getActivity(), Manifest.permission.ACCESS_FINE_LOCATION)
!= PackageManager.PERMISSION_GRANTED || ContextCompat.checkSelfPermission(getActivity(),
Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
requestPermissions(new String[]{Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.ACCESS_COARSE_LOCATION},
PERMISSION_REQUEST_FINE_LOCATION);
}
}
在onRequestPermissionresult()里面的代码如下: -
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
switch (requestCode) {
case PERMISSION_REQUEST_FINE_LOCATION: {
if (grantResults.length == 0 || grantResults[0] != PackageManager.PERMISSION_GRANTED) {
initilizeMap();
} else {
initilizeMap();
}
}
}
}
什么都没有被召唤。
我面临同样的问题,但这是我的错 。
如果在Manifest中缺少权限尝试定义这些权限,我伪造在Manifest中定义权限允许权限对话框没有出现
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
在清单中
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.