Android-allfileaccesspermission-howtogetsdcarddata
创始人
2024-08-19 16:00:15
0

在Android 6.0以上的系统中,要获取外部存储器(也就是SD卡)的数据,需要先动态申请SD卡读写权限。具体思路如下:

1.在项目的AndroidManifest.xml文件中添加如下权限:

  1. 在代码中动态请求权限:

private void requestPermission(String permission) { if (ContextCompat.checkSelfPermission(this, permission) != PackageManager.PERMISSION_GRANTED) { ActivityCompat.requestPermissions(this, new String[]{permission}, 1); } }

  1. 处理申请结果。在onRequestPermissionsResult方法中处理用户授权的结果:

@Override public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) { if (requestCode == 1) { if (grantResults[0] == PackageManager.PERMISSION_GRANTED) { //用户授权了,进行文件读取操作 readFileFromExternalStorage(); } else { Toast.makeText(this, "没有授权读取SD卡", Toast.LENGTH_SHORT).show(); } } }

4.读取文件。拥有授权后,就可以通过File类的相关API读取外部存储器的数据了。如下面的示例代码所示,该代码可以读取SD卡根目录下的hello.txt文件。

private void readFileFromExternalStorage() { String state = Environment.getExternalStorageState(); if (Environment.MEDIA_MOUNTED.equals(state)) { File sdCardDir = Environment.getExternalStorageDirectory(); File file = new File(sdCardDir, "hello.txt"); try { FileInputStream fis = new FileInputStream(file); BufferedReader br = new BufferedReader(new InputStreamReader(fis)); StringBuilder sb = new StringBuilder(); String line; while ((line = br.readLine()) != null) { sb.append(line); } br.close(); fis.close(); Toast.makeText(this, sb.toString(), Toast.LENGTH_SHORT).show(); } catch (IOException e) { e.printStackTrace(); } } else { Toast.makeText(this, "SD卡未挂载", Toast.LENGTH_SHORT).show(); } }

相关内容

热门资讯

今年以来!htx矩阵wepok... 今年以来!htx矩阵wepoker辅助(透视)微乐春天小程序辅助(总是有辅助修改器)-哔哩哔哩1、实...
透视方针!哈糖大菠萝怎么开挂(... 透视方针!哈糖大菠萝怎么开挂(透视)红龙poker辅助器免费观看(辅助)确实一直总是有脚本(哔哩哔哩...
透视安装!约局吧辅助器(透视)... 透视安装!约局吧辅助器(透视)赣牌圈小程序破解版(确实真的有辅助辅助器)-哔哩哔哩1、赣牌圈小程序破...
透视策略!aa poker辅助... 透视策略!aa poker辅助(透视)智星德州插件怎么下载(辅助)切实真的有工具(哔哩哔哩)1、智星...
透视透视!we-poker辅助... 透视透视!we-poker辅助器(透视)新道游正版辅助(一贯存在有辅助工具)-哔哩哔哩1、游戏颠覆性...
透视举措!pokerworld... 透视举措!pokerworld破解版下载(透视)sohoopoker辅助(辅助)好像一直都是有技巧(...
近日!拱趴大菠萝自动计算机器人... 近日!拱趴大菠萝自动计算机器人(透视)亿游十三道脚本插件(切实真的有辅助辅助器)-哔哩哔哩1、超多福...
透视讲义!德州局透视脚本免费版... 透视讲义!德州局透视脚本免费版下载手机版(透视)德州私人局脚本(辅助)果然是真的有教程(哔哩哔哩)1...
透视存在!wepoker有透视... 透视存在!wepoker有透视功能吗(透视)掌中乐游戏修改器(好像是真的辅助插件)-哔哩哔哩1、让任...
透视演示!扑克之星辅助(透视)... 透视演示!扑克之星辅助(透视)哈糖大菠萝助手(辅助)竟然一直都是有神器(哔哩哔哩)1、哈糖大菠萝助手...