我知道在latestndroid版本中,应用程序必须要求运行时权限,但权限是否应该在manifest.xml权限列表中? 如果我需要使用gps而且我有这个代码
if (ContextCompat.checkSelfPermission(this,
Manifest.permission.ACCESS_FINE_LOCATION)
!= PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(this,
new String[]{Manifest.permission.ACCESS_FINE_LOCATION},
101);
}
else{
Location location = locationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);
if(location != null){
}
else{
locationManager.requestLocationUpdates(
LocationManager.GPS_PROVIDER,
0,
0, locationListener);
}
}
是否必须在manifest.xml上添加权限?
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
答案 0 :(得分:0)
权限是否应该在manifest.xml权限列表中?
是
是否必须在manifest.xml上添加权限?
是的,虽然您只需要一个REPLACE(STUFF(fieldname,1,CHARINDEX('- ',fieldname),''),REVERSE(LEFT(REVERSE(fieldname),CHARINDEX(' ',REVERSE(fieldname)))),'')
,但不需要两个同一权限。
答案 1 :(得分:0)
是的,这是强制性的,因为在较低版本的Android(&lt; = 5.1)上不需要请求权限。
请参阅此文档:
https://developer.android.com/training/permissions/requesting.html
答案 2 :(得分:0)
您必须直接向用户请求权限。这些被认为是&#34; Dangerous&#34;权限。需要检查以确保您已被用户授予,如果没有请求访问权。
示例:
int permissionCheck = ContextCompat.checkSelfPermission(thisActivity,Manifest.permission.READ_CONTACTS);`
ActivityCompat.requestPermissions(thisActivity,
new String[]{Manifest.permission.READ_CONTACTS},
MY_PERMISSIONS_REQUEST_READ_CONTACTS);
有关详细信息,请参阅以下内容。 https://developer.android.com/training/permissions/requesting.html
答案 3 :(得分:0)
是 这对用户来说是一个不错的安全程序,因为这会阻止“坏”开发人员访问用户手机上的所有内容。 这是从6.0棉花糖版本设计的。在此之前,当下载应用程序时,只有Play商店会提示用户具有应用程序可以访问的功能/数据。现在它非常严格,用户可以合理地控制他们的数据。