设置android:sharedUserId="android.uid.system" 支持 sdcard读写

在AndoridManifest.xml文件中添加android:sharedUserId="android.uid.system" 可以让应用程序获得系统权限,完成很多setting 操作, 但是此时sdcard无法读写了。
解决方法:
1. 去掉android:sharedUserId="android.uid.system" ,此时sdcard可以读写,但是有些setting 操作无法完成

2. 另写一个apk, 负责sdcard的操作,通过在包含android:sharedUserId="android.uid.system" 的apk中调用完成操作

3. 修改sdcard的读写权限,
修改源码下的/system/vold/Volume.cpp
将Fat::doMount(devicePath, "/mnt/secure/staging", false, false, false,1000, 1015, 0702, true))  修改为:
Fat::doMount(devicePath, "/mnt/secure/staging", false, false, false, 1000, 1015, 0002, true))
将生成的out/..../system/bin/vold push到system/bin中

参考:http://blog.csdn.net/xiaxiangnanxp1989/article/details/8672303  
http://www.eoeandroid.com/thread-63314-1-1.html


你可能感兴趣的:(android,sdcard)