2017-07-17 63 views
0

的Android 6.0.1沒有設置SMS_READ允許我設立許可清單文件小蜜MI4W通過編程

<uses-permission android:name="android.permission.READ_CONTACTS" /> 
<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/> 
<uses-permission android:name="android.permission.VIBRATE"/> 
<uses-permission android:name="android.permission.READ_PHONE_STATE"/> 
<uses-permission android:name="android.permission.RECEIVE_SMS"/> 
<uses-permission android:name="android.permission.READ_SMS" /> 

但不幸的是我不能讓短信permissin,之後我設置好的應用起來,我應該去智能手機的安全財產,並由我自己設置。究其原因,是否是MI限制的原因,或者我必須在Android版本的6版中設置其他內容。這適用於此智能手機上的previos版本。

+0

你需要運行許可。 –

+0

從6開始,你需要明確要求的一些權限:https://developer.android.com/training/permissions/requesting.html 這個庫可以把它簡化一下:https://github.com/tajchert/那姆 –

+0

THX我去看看.. – koa73

回答

2

從Android的棉花糖,你需要給運行時間許可。 添加如下代碼在你的發射活動onCreate()方法。

String permission = Manifest.permission.READ_SMS; 
if (ContextCompat.checkSelfPermission(getContext(), permission) != PackageManager.PERMISSION_GRANTED){ 
    permissionList.add(permission); 

    if (!ActivityCompat.shouldShowRequestPermissionRationale(getActivity(), permission)){ 
     requestPermissions(new String[]{permission}), SMS_PERMISSION); 
    } 
} 
+0

我應該問兩個許可RESEVE_SMS&READ_SMS或足夠多的收到什麼? – koa73

+0

您需要在權限列表中逐個添加所有運行時權限 –