日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

解决安卓系统写入SD卡权限问题

發布時間:2023/11/27 生活经验 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 解决安卓系统写入SD卡权限问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.需要用戶手動賦予的權限( Dangerous Permissions)

所屬權限組權限
日歷READ_CALENDAR
日歷WRITE_CALENDAR
相機CAMERA
聯系人READ_CONTACTS
聯系人WRITE_CONTACTS
聯系人GET_ACCOUNTS
位置ACCESS_FINE_LOCATION
位置ACCESS_COARSE_LOCATION
麥克風RECORD_AUDIO
電話READ_PHONE_STATE
電話CALL_PHONE
電話READ_CALL_LOG
電話WRITE_CALL_LOG
電話ADD_VOICEMAIL
電話USE_SIP
電話PROCESS_OUTGOING_CALLS
傳感器BODY_SENSORS
短信SEND_SMS
短信RECEIVE_SMS
短信READ_SMS
短信RECEIVE_WAP_PUSH
短信RECEIVE_MMS
存儲READ_EXTERNAL_STORAGE
存儲WRITE_EXTERNAL_STORAGE
注意:如果應用程序請求在AndroidManifest中列出的危險權限,并且應用程序已經在同一權限組中具有另一個危險權限,系統會立即授予權限,而不會與用戶進行任何交互,。例如,如果一個應用程序先前已經請求并被授予READ_CONTACTS權限,然后它請求WRITE_CONTACTS(同屬于聯系人一組),系統會立即授予該權限,不會再彈出權限授予詢問的對話框。

2.具體增加權限操作

如圖所示,在mainfest文件中聲明了SD卡的讀和寫權限,仍舊報錯:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"></uses-permission>


安卓23.0版本以上,不僅僅要設置上面的權限,還要在對SD卡有讀寫操作的地方授權,下面是公共類:

import android.Manifest;
import android.app.Activity;
import android.content.pm.PackageManager;
import android.support.v4.app.ActivityCompat;public class PermisionUtils {// Storage Permissionsprivate static final int REQUEST_EXTERNAL_STORAGE = 1;private static String[] PERMISSIONS_STORAGE = {Manifest.permission.READ_EXTERNAL_STORAGE,Manifest.permission.WRITE_EXTERNAL_STORAGE};/*** Checks if the app has permission to write to device storage* If the app does not has permission then the user will be prompted to* grant permissions** @param activity*/public static void verifyStoragePermissions(Activity activity) {// Check if we have write permissionint permission = ActivityCompat.checkSelfPermission(activity,Manifest.permission.WRITE_EXTERNAL_STORAGE);if (permission != PackageManager.PERMISSION_GRANTED) {// We don't have permission so prompt the userActivityCompat.requestPermissions(activity, PERMISSIONS_STORAGE,REQUEST_EXTERNAL_STORAGE);}}
}

然后直接在需要授權的地方調用:注意接口函數一定要放對位置,血的教訓。

verifyStoragePermissions(this);

參考bolg:http://blog.csdn.net/qq_26787115/article/details/64127695
     http://blog.csdn.net/wi2rfl78/article/details/78314286http://blog.csdn.net/htwhtw123/article/details/76032997http://blog.csdn.net/qq_26787115/article/details/64127695

總結

以上是生活随笔為你收集整理的解决安卓系统写入SD卡权限问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。