因为在做一个项目时发现在有Manfast.xml文件sharedUserId="android.uid.system时,即使你加了权限:
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
也还是不能操作sdcard,那么如何解决这个问题?
第一:把sharedUserId="android.uid.system去掉即可,但是我们必须要sharedUserId="android.uid.system那怎么办呢?
第二:修改源码下的/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,再将Vold编译一下,将生成的out/..../system/bin/vold push到机器的system/bin中就ok了,已经过验证。