ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Android——外部存储+动态权限

2021-08-15 08:32:37  阅读:203  来源: 互联网

标签:存储 String Manifest Environment 返回值 Android 权限


介绍

  Android对外部存储需要静态权限和动态权限。涉及五个类:Environment ,ActivityCompat,Manifest.permission ,PackManger,FileOutStream

  Environment:环境类,检查外部存储环境和获取存储路径

  AcitivityCompat:活动兼容类,检查和获取动态权限

  Manifest.permission:权限类型

  PackManger:包管理器

  FileOutputStream:文件输出流

 

属性:

  ( Environment )

    MEDIA_MOUNTED:挂载参数

 

  (PackManger)

    PERMSSION_GRANTED:权限确定参数

  

  (Manifest.permission)

    WRITE_EXTERNAL_STORAGE:写入权限

    READ_EXTERNAL_STORAGE:读取权限

 

方法

  (Environment)

    String getExternalStorageState()

      参数:无

      返回值:String

      返回值意义:返回外部存储挂载状态

      作用:获取外部存储挂载状态

 

    String getExternalStorageDirectory()

      参数:无

      返回值:String

      返回值意义:返回外部存储的文件路径

      作用:获取外部存储的文件路径

 

 

   (ActivityCompat)

      String checkSelfPermission( Context context , String perssion )

      参数:

        Context context:上下文

        String perssion:权限类型

      返回值:String

      返回值意义:是否拥有此权限

      作用:检查是否拥有此权限

 

     void requestPermissions(Activity activity, String [] permissions , int requestCode )

        参数:

          Activity activity:活动对象

          String[] permissions:权限申请字符串数组

          int requestCode:请求代码

        返回值:无

        返回值意义:无

        作用:获取动态权限

  

使用

  

 // Environment 挂载检查 ActivityCompat Manifest 权限检查 PackManger 对比
                
                // 检查外部存储挂载状态
                if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED) ){

                    // 检查读取和写入动态权限
                    if(ActivityCompat.checkSelfPermission(ThirdActivity.this, Manifest.permission.WRITE_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED){

                    }else {
                        // 如果没有,获取读取和写入动态权限
                        ActivityCompat.requestPermissions(ThirdActivity.this,new String[]{ Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.READ_EXTERNAL_STORAGE},100 );
                    }

                }

 

标签:存储,String,Manifest,Environment,返回值,Android,权限
来源: https://www.cnblogs.com/remix777/p/15142589.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有