程序中执行shell命令行,获取system目录读写权限
来源:互联网 发布:淘宝哪些店铺书包好看 编辑:程序博客网 时间:2024/06/02 16:56
////执行shell命令行public void execShell(String cmd){ try{ //权限设置 Process p = Runtime.getRuntime().exec("su"); //获取输出流 OutputStream outputStream = p.getOutputStream(); DataOutputStream dataOutputStream = new DataOutputStream(outputStream); //将命令写入 dataOutputStream.writeBytes(cmd); //提交命令 dataOutputStream.flush(); //关闭流操作 dataOutputStream.close(); outputStream.close(); } catch(Throwable t) { t.printStackTrace(); } }
//权限配置
<uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS"/>
//sd卡操作权限
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
////比如执行将应用cp到system/app
private String com_cp = "cp " + "/sdcard/myapp.apk" + " /system/app/";
execShell(com_cp );
////获取system目录的读写权限
private final String com_rw = "mount -o remount " + "/dev/block/mtdblock8" + " /system";
execShell(com_rw);
////设置只读权限
private final String com_ro = "mount -o remount,ro " + "/dev/block/mtdblock8" + " /system";
execShell(com_ro);
////查询system分区名和权限:在shell命令行执行mount
# adb shell
root@android:/ # mount
rootfs / rootfs ro,relatime 0 0
tmpfs /dev tmpfs rw,nosuid,relatime,mode=755 0 0
devpts /dev/pts devpts rw,relatime,mode=600 0 0
proc /proc proc rw,relatime 0 0
sysfs /sys sysfs rw,relatime 0 0
none /acct cgroup rw,relatime,cpuacct 0 0
tmpfs /mnt/secure tmpfs rw,relatime,mode=700 0 0
tmpfs /mnt/asec tmpfs rw,relatime,mode=755,gid=1000 0 0
tmpfs /mnt/obb tmpfs rw,relatime,mode=755,gid=1000 0 0
none /dev/cpuctl cgroup rw,relatime,cpu 0 0
/dev/block/mtdblock8 /system ext4 rw,relatime,barrier=1,data=ordered,noa
lloc 0 0
/dev/block/mtdblock6 /data ext4 rw,nosuid,nodev,noatime,nodiratime,barri
a=ordered,noauto_da_alloc 0 0
/dev/block/mtdblock5 /cache ext4 rw,nosuid,nodev,noatime,nodiratime,barr
ta=ordered,noauto_da_alloc 0 0
/sys/kernel/debug /sys/kernel/debug debugfs rw,relatime 0 0
/dev/block/vold/8:1 /mnt/usb_storage/USB_DISK0/HDD fuseblk rw,relatime,u
,group_id=0,allow_other,blksize=4096 0 0
/dev/block/vold/31:9 /mnt/sdcard vfat rw,dirsync,nosuid,nodev,noexec,noa
iratime,uid=1000,gid=1015,fmask=0002,dmask=0002,allow_utime=0020,codepag
iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0
/dev/block/vold/31:9 /mnt/secure/asec vfat rw,dirsync,nosuid,nodev,noexe
e,nodiratime,uid=1000,gid=1015,fmask=0002,dmask=0002,allow_utime=0020,co
p437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0
tmpfs /mnt/sdcard/.android_secure tmpfs ro,relatime,size=0k,mode=000 0 0
参考 http://blog.csdn.net/tabactivity/article/details/12629873
- 程序中执行shell命令行,获取system目录读写权限
- [Shell]判断目录读写权限
- 用system权限执行程序
- APK程序获取system权限
- 【shell脚本练习】判断目录读写权限
- shell命令行中执行SQL
- 获取执行程序所在目录
- 使用mount挂载system目录为读写权限
- c#获取应用程序目录,C#中得到程序当前工作目录和执行目录方法大全
- c#获取应用程序目录,C#中得到程序当前工作目录和执行目录方法大全
- Java:程序执行流程+命令行获取命令
- android在apk中获取root权限,并执行命令(改变文件权读写限)
- linux C程序中获取shell脚本输出(如获取system命令输出)
- linux C程序中获取shell脚本输出(如获取system命令输出)
- linux C程序中获取shell脚本输出(如获取system命令输出)
- inux C程序中获取shell脚本输出(如获取system命令输出)
- linux C程序中获取shell脚本输出(如获取system命令输出)
- linux C程序中获取shell脚本输出(如获取system命令输出)
- GTK+重拾--10 GTK+中的组件(二)
- 导出Excel工具类
- FragmentTransition replace add show hide方法的使用和差异
- 预处理语句
- MesaSQLite数据库简单使用
- 程序中执行shell命令行,获取system目录读写权限
- Qt之QTableWidget详细使用
- 计量经济学复习笔记(七)
- 理解C++ dynamic_cast
- Java设计模式透析之 —— 适配器(Adapter)
- iOS label的lineBreak和行间距的碰撞
- 文章标题
- 2015年自我总结
- 非常通俗易懂的解释密码算法原理!