Manifest.permission.WRITE_EXTERNAL_STORAGE 在哪里定义
时间: 2024-03-01 18:55:44 浏览: 204
Manifest.permission.WRITE_EXTERNAL_STORAGE 是在 Android SDK 中的 AndroidManifest.xml 文件中定义的。这个权限允许应用程序在外部存储器中写入数据。在 AndroidManifest.xml 文件中,这个权限的定义如下:
```xml
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
```
这个权限在 Android 6.0 及以上的版本中是需要动态申请的,而且如果应用程序需要在外部存储器中读取数据,也需要申请 Manifest.permission.READ_EXTERNAL_STORAGE 权限。
相关问题
public void initView() { if (Build.VERSION.SDK_INT > Build.VERSION_CODES.LOLLIPOP) { if (ActivityCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) { ActivityCompat.requestPermissions(this, PERMISSIONS_STORAGE, REQUEST_PERMISSION_CODE); } } }
这段代码是用来检查并请求存储权限的。如果当前设备的 Android 版本大于5.0(LOLLIPOP),则会检查是否已经拥有写入外部存储的权限,如果没有则会弹出一个权限请求对话框,让用户授权。其中 PERMISSIONS_STORAGE 是一个字符串数组,存储了需要请求的权限,REQUEST_PERMISSION_CODE 是请求权限的请求码。在 onRequestPermissionsResult() 方法中可以处理用户是否授权的结果。
flutter compat added android.permission.WRITE_EXTERNAL_STORAGE android.permission.READ_PHONE_STATE解决实例
为了在Flutter应用中使用WRITE_EXTERNAL_STORAGE和READ_PHONE_STATE权限,需要在AndroidManifest.xml文件中添加以下代码:
```
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
```
然后,在您的Flutter项目中的android/app/build.gradle文件中添加以下依赖项:
```
dependencies {
implementation 'com.android.support:support-compat:28.0.0'
}
```
最后,在您的Flutter项目中的MainActivity.java文件中添加以下代码:
```
import android.os.Bundle;
import io.flutter.app.FlutterActivity;
import io.flutter.plugins.GeneratedPluginRegistrant;
import androidx.core.app.ActivityCompat;
import androidx.core.content.ContextCompat;
import android.Manifest;
import android.content.pm.PackageManager;
public class MainActivity extends FlutterActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
GeneratedPluginRegistrant.registerWith(this);
int permissionCheck = ContextCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE);
if (permissionCheck != PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, 1);
}
permissionCheck = ContextCompat.checkSelfPermission(this, Manifest.permission.READ_PHONE_STATE);
if (permissionCheck != PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.READ_PHONE_STATE}, 2);
}
}
}
```
这个代码片段将检查WRITE_EXTERNAL_STORAGE和READ_PHONE_STATE权限是否被授予,并提供请求这些权限的选项。当用户授权这些权限后,您的应用程序就可以使用这些权限了。
阅读全文