安卓的储存权限,(几乎大部分权限配置)
2025-01-23 本文已影响0人
太平洋_cfd2
核心:
文件存储,不需要权限弹窗,直接就能搞
import {saveDocuments} from '@react-native-documents/picker';
const [{uri: targetUri}] = await saveDocuments({
sourceUris: ['file://' + uri], // 安卓需要加上file
copy: false,
mimeType: 'audio/mpeg', // 保存mp3
fileName: filename,
});
少写了,也许某些权限就弹不出来
比如存储只写WRITE_EXTERNAL_STORAGE,就没权限窗弹出(卡过几小时)
储存文件时,需要加上file://
否则无效
<!-- 读取存储权限 -->
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<!-- 写入存储权限 -->
<uses-permission android:name="android.permission.WRITE_CALENDAR" />
<uses-permission android:name="android.permission.WRITE_CALL_LOG" />
<uses-permission android:name="android.permission.WRITE_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_MEDIA_AUDIO" />
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES" />
<uses-permission android:name="android.permission.READ_MEDIA_VIDEO" />
<!-- 如果需要访问相机 -->
<!-- <uses-permission android:name="android.permission.CAMERA" />-->
<!-- 如果应用的目标API级别是28(Android 9)或更高,还需要声明以下权限 -->
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />