详解“系统应用不能访问sdcard”
来源:互联网 发布:思途旅游cms 6.0 下载 编辑:程序博客网 时间:2024/06/08 14:46
下面我来讲解一下为什么“系统应用不能访问sdcard”以及Android这样设计的原因。
1.为什么系统应用不能访问sdcard?
我们使用ls命令可以看到文件系统中一下内容的权限如下:
130|root@android:/ # ls -l /mnt/
drwxr-xr-x root system 1970-01-01 08:00 asec
drwxr-xr-x root system 1970-01-01 08:00 obb
drwx—— root root 1970-01-01 08:00 secure
d—rwxr-x system sdcard_rw 1970-01-01 08:00 sdcard (这是一种拥有者权限最低的特殊情况)
从上面可以看到sdcard目录所述用户是system,所属组是sdcard_rw。并且其目录权限是d—rwxr-x,那么这是什么意思呢?首先d标示sdcard是一个目录文件,—是system用户的对sdcard目录的权限,即没有任何的读写执行权限。这是典型的拥有者权限最低的情况。rwx是非system用户,sdcard_rw组用户对sdcard目录权限,即有读写和可可执行权限。这也就是为什么非系统应用在AndroidManifest.xml中添加如下的权限之后,便可访问sdcard。
android:name=”android.permission.WRITE_EXTERNAL_STORAGE”
添加该permission之后,应用就会被加到sdcard_rw组,也就拥有了rwx权限。r-x是非system用户,非sdcard_rw组用户对sdcard目录的权限,及读和执行权限。
2.Android为什么要这样做呢?
Because if the SD card gets unmounted it may need to kill any processes that have files open on it and we don’t want system processes being killed like that. If you want to access the SD card, you need to not use the system shared user ID.
- 详解“系统应用不能访问sdcard”
- android application access sdcard安卓应用访问sdcard
- 访问SDCard
- 访问sdcard
- Sdcard访问
- Android 4.0系统在sdcard不能创建目录
- Android 4.0系统在sdcard不能创建目录
- XP系统网络不能访问
- sdcard不能写入
- 不能访问虚机中的linux系统中的tomcat中的应用链接(带端口)
- 访问SDCARD工具类
- flex访问SDcard内容
- 添加 sdcard访问权限
- 访问External sdcard
- android sdcard文件访问权限与apk应用 userid 访问权限的关系。
- android sdcard文件访问权限与apk应用 userid 访问权限的关系。
- Chrome不能访问应用商店的解决方法
- win10系统局域网不能访问怎么办
- C#操作SQL Server数据库
- spring ioc原理
- 谷歌官方两种下拉刷新样式(横线样式、圆圈样式)
- VB学习笔记——Len函数和LenB函数
- SQL导出txt文件字段用逗号 ,隔开
- 详解“系统应用不能访问sdcard”
- CentOS6.6配置防火墙
- CCS+C6678LE开发记录11:多核协作(IPC)入门
- tcp-ip : snmp
- Linux网络编程之多进程
- ubuntu12.04LTS-ARM平台交叉编译器的制作
- CentOS7.0网络设置和域名绑定
- Shell-计算多行数值求和
- Android Volley完全解析(三),定制自己的Request