怎么给应用读取外置存储权限内存卡的权限?

android获取内置和外置SD卡路径
本文将介绍android真机环境下如何获取内置和外置SD卡路径。
测试环境:三星Note3,其他手机待测试。。。
所需权限(Manifest.xml文件里)
获取路径代码(MainActivity.java文件)
package com.example.
import java.io.BufferedR
import java.io.F
import java.io.InputS
import java.io.InputStreamR
import java.util.ArrayL
import java.util.L
import android.os.B
import android.os.E
import android.app.A
import android.view.M
public class MainActivity extends Activity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
StringBuilder log = new StringBuilder();
String inPath = getInnerSDCardPath();
log.append("内置SD卡路径:" + inPath + "\r\n");
List extPaths = getExtSDCardPath();
for (String path : extPaths) {
log.append("外置SD卡路径:" + path + "\r\n");
System.out.println(log.toString());
* 获取内置SD卡路径
public String getInnerSDCardPath() {
return Environment.getExternalStorageDirectory().getPath();
* 获取外置SD卡路径
* @return 应该就一条记录或空
public List getExtSDCardPath()
List lResult = new ArrayList();
Runtime rt = Runtime.getRuntime();
Process proc = rt.exec("mount");
InputStream is = proc.getInputStream();
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
while ((line = br.readLine()) != null) {
if (line.contains("extSdCard"))
String [] arr = line.split(" ");
String path = arr[1];
File file = new File(path);
if (file.isDirectory())
lResult.add(path);
isr.close();
} catch (Exception e) {
public boolean onCreateOptionsMenu(Menu menu) {
// I this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_main, menu);
其中,line.contains("extSdCard")判断部分有待进一步验证!
打印结果:
1. 插入一张外置SD卡后
内置SD卡路径:/storage/emulated/0
外置SD卡路径:/storage/extSdCard
2. 取出外置SD卡后
内置SD卡路径:/storage/emulated/0正在初始化报价器手机sd卡无法写入权限怎么办?纯洁潇潇1晛7在Android 4.4中,如果你同时使用了机身存储和SD卡, 那么应用程序将无法在SD卡中创建、修改、删除数据。比如,你无法使用酷我音乐盒下载保存Mp3到外置存储卡了,也无法使用快读免费小说将TXT版小说下载保存到外置存储卡了。但是应用程序仍然可以往主存储(机身存储)的任意目录中写入数据,不受任何限制。Google表示, 这样做的目的是,,通过这种方式进行限制,系统可以在应用程序被卸载后清除遗留文破解方法其实很简单,就是添加外置存储卡的写入权限。前提是手机必须Root。
更多回答rqywryr66986R.E管理器挂载为读写,打开/system/etc/permissions目录,找到platform.xml文件,勾选,然后在…菜单中选择“在文本编辑器中打开”。
查找代码: (此行代码有些机型或rom没有, 没有的可以忽略不计)
完成上面两步后重启手机,你会发现可以往外置存储卡(SD卡)创建、修改、删除数据了。
rongshuangok插拔内存卡导致磁道混乱,格式化一下就好了,或者是你内存卡写保护了,不要打开写保护
热门问答123456789101112131415161718192021222324252627282930主题帖子积分
彩虹糖:631
安卓5.0 REC安装/引导工具 & 外置卡权限补丁
&查看:13928
&回复:322
本帖最后由 binsee 于
18:04 编辑
工具名称:REC安装/引导工具 适用版本:安卓5.0
感谢:wmjan、wuxianlin
方式优点 缺点 永久安装安装一次,后续直接操作手机即可进入第三方rec影响OTA升级
引动启动不替换官方REC,不影响OTA升级 每次进入rec需要连接电脑用脚本引导进入
选用的REC是来自于wuxianlin的已适配安卓5.0的TWRP REC,支持连接电脑时直接使用mtp挂载(电脑中显示便携设备,可直接读写手机存储卡文件)。制作的脚本来自于wmjan,在其脚本基础上进行了功能扩充。
工具支持手机状态:手机开机状态/手机关机状态。
支持两种进入REC方式:永久安装/引导启动。(经常OTA升级的推荐使用引导启动)
关于此REC需要注意一点:
如果你不想ROOT,在rec中重启时提示是否按照SuperSu,要点不安装!
否则,ROOT后会导致OTA升级失败!!!
---------------------------------------------------------------------------------------------------------------------------------------
然后给一个无需root即可解除外置卡权限限制的补丁包:
安卓系统对于外置卡的写权限是有限制的,尤其从安卓4.4开始谷歌就开始收紧写权限,目的是为了规范化(想想各种应用随便在存储卡内随意创建乱七八糟的目录,卸载时还不会给清除掉是多么糟糕)。
到了安卓5.0时代,各个定制安卓系统的厂家都开始接受与遵守谷歌的要求规范,使用原生的外置存储卡权限方案。系统应用可以拥有外置存储卡的所有读写权限,但第三方软件只允许通过系统API调用自己的专属目录,这样其实很好,目录不会乱糟糟的了。
但是,国内的各种app遵守这个规范的很少,因为以前乱建目录习惯了,还没有调整过来,因此就出现大家使用一些软件时无法将数据写到外置存储自己想要的目录中去。
但权限的规范化是一个必然的趋势,众多app后续肯定要遵守这个规范来进行开发与调整的。只是目前而言,还有不少应用还没有进行调整,一些用户也没有习惯这个权限管理方式,导致使用上有些不习惯的地方。
因为自己需要使用第三方软件来进行文件管理,需要让第三方权限能有外置卡的读写权限,但软件又不支持新的管理方式,只能改了系统的权限限制。
其实权限的破解方式网上一搜就能找到,只是普遍需要root,手动修改,不小心改错了,连系统都进不了。
因此,本次制作了无需root的补丁包,来临时使用。
补丁包特点:
1、分为破解包和还原包,方便以后恢复原版
2、不影响OTA升级(OTA一般不会验证这个文件,所以不会影响OTA。如果影响到了,则用还原包还原即可)
3、增加了文件验证,避免版本不对误刷后导致系统无法启动
补丁包使用方式:使用rec安装即可。
建议操作方式:
使用上边提供的rec安装工具,启动后引导启动REC,然后把补丁包复制到手机上(或外置卡上),然后在REC中安装即可。
如果需要还原,则再次引导进入REC,然后安装还原包即可。
REC安装/引导工具 & 权限补丁包 下载地址:
游客,如果您要查看本帖隐藏内容请
最后声明:此补丁包发布仅为个人行为,与官方无关。
好不好用,看新系统
楼主棒棒哒!
主题帖子积分
彩虹糖:631
这次就不仔细排版了。
彩虹糖1040
主题帖子积分
彩虹糖:1040
来自OPPO Find 7手机
(⊙o⊙)哦!我来瞅瞅
主题帖子积分
彩虹糖:409
紧急集合考虑考虑
主题帖子积分
彩虹糖:480
我看看吧,好东西
主题帖子积分
彩虹糖:608
来自OPPO FIND7手机
男女抱抱你
彩虹糖3481
主题帖子积分
彩虹糖:3481
来自OPPO Find 7手机
支持一下!
主题帖子积分
彩虹糖:669
看看& && && &
主题帖子积分
彩虹糖:663
来自OPPO Find 7手机
刷了吴大的5.0rec是可以OTA升级的,亲测
主题帖子积分
结婚的发挥vbsbhfwa手机签到经验翻倍!快来扫一扫!
教你充分利用外置SD卡(修改权限为可以写入,读取SD卡游戏数据包)
24389浏览 / 27回复
jasoncstar001 把此帖设为精华,作者+50经验给力推荐
平板到手后插上外置SD卡,发现可以读取到SD卡上面的文件,但在平板上用文件管理器没有写入权限(上可以)不知道大家有没有这个问题,昨天折腾了一会终于解决了,现在来给大家分享下首先ROOT并下载RE管理platform.xml器,打开/system/etc/permissions 目录下的platform.xml文件
不知道为什么platform.xml文件里的代码编辑不到帖子里,我传张图片和修改好的附件吧。如果用附件platform.xml直接覆盖的话,一定要用RE把权限改为RW-R-R,切记切记!!
保存后重启生效,这样SD卡就有写入权限了读取外置SD卡上的数据包 (不是版主那种置换方法)&
个人觉得的内置存储比SD卡稳定一些而且4G的空间装软件绰绰有余了,数据包和音可以放外置SD卡上这样有个好处是可以随时拔掉SD卡给别的设备使用,而不影响E708上的软件使用首先下载力卓文件这个软件
选择 "插件" 菜单,下载超级挂载这个插件
安装好插件后打开力卓文件选择 "超级挂载" - "添加挂载路径"
1、选择文件 - 这里选的是外置SD卡上的数据包路径 - 打上勾确定
2、再选择文件 - 这里选的是你需要挂载的路径
如图所示:
设置好了以后玩时选择一下挂载就好了。
media_rw表示什么意思?和SDCARD_RW有何不同, 请解释。
dev_mount sdcard /mnt/sdcard emmc@fat /devices/platform/goldfish_mmc.0 /devices/platform/mtk-sd.0/mmc_hostdev_mount sdcard2 /mnt/sdcard2 auto /devices/platform/goldfish_mmc.1 /devices/platform/mtk-sd.1/mmc_host我把红字互换了位置但是还是没置换起!请楼主帮忙看看怎么回事。
拇指玩游戏不挂卡。。怎么恢复原来的状态。。。。
好是好,不过不利于装B。8G太小了...
力卓超级挂载没用啊
本人太笨,已被害死,还望解救(症状完全无sd卡权限以及各种报错)
好麻烦,每次开玩前还得想着先挂……
楼主真行,学习了,谢谢!
MyDiskTest图文详解
回楼主,将re管理器换成英文版即可更改文件,汉化不行,不知道为什么..
RW-R-R是什么意思?我用的RE管理器是中文版的
超级挂载下完不能用显示找不到sd卡
超级挂载显示找不到外置sd卡
为什么我的exted里面的179-1是我的内存卡
楼主这真的可行吗?
已成功,谢谢lz
非常感谢啊
支持键盘翻页 ( 左右 )&
用户名/注册邮箱/注册手机号
其他第三方号登录}

我要回帖

更多关于 安卓读取应用权限 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信