我开始用Android进行开发。我在Android权限的系统中使用SDK 23。在互联网的例子中,当我想要checkPermission时,我发现:
this.checkSelfPermission(Manifest.permission.READ_CONTACTS)但对我不起作用。我需要写:
this.checkSelfPermission(android.manifest.permission.READ_CONTACTS)我想知道不同之处,以及为什么它不起作用。
如果可以的话,这是我的Manifest文件(只有权限):
<uses-permission android:name="android.permission.SEND_SMS" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.READ_SMS" />
<uses-permission android:name="android.permission.WRITE_SMS" />
<uses-permission android:name="android.permission.WRITE_CONTACTS" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.CALL_PHONE" />
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
<uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS" />
<uses-permission android:name="android.permission.WRITE_SYNC_SETTINGS" />
<uses-permission android:name="android.permission.RECEIVE_SMS" />谢谢
发布于 2016-01-20 14:12:39
当您询问是否允许许可时,您应该使用android.Manifest.permission.XX,然后询问您应该使用Manifest.permission.XX,这里就是一个例子:
public static boolean checkCameraPermissions(Activity activity, int permission) {
if (ContextCompat.checkSelfPermission(activity, android.Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(activity,
new String[]{Manifest.permission.CAMERA}, permission);
return false;
}
return true;
}https://stackoverflow.com/questions/34901870
复制相似问题