在Android中有一个精简版的linux系统,因为是linux系统,那么有时候在写Android应用程序的时候会遇到权限问题。我们都知道在shell中可以通过chmod命令来修改权限,所以就希望通过程序来执行shell中的命令,如何来做呢?看下面代码:

privatebooleanrunCommand(Stringcommand){
  1. Processprocess=null;
  2. try{
  3. process=Runtime.getRuntime().exec(command);
  4. Log.i("command","TheCommandis:"+command);
  5. process.waitFor();
  6. }catch(Exceptione){
  7. Log.w("Exception","Unexpectederror-"+e.getMessage());
  8. returnfalse;
  9. }finally{
  10. try{
  11. process.destroy();
  12. }catch(Exceptione){
  13. Log.w("Exception","Unexpectederror-"+e.getMessage());
  14. }
  15. }
  16. returntrue;
  17. }

然后通过调用这个方法就能实现在Android中修改文件权限,例如需要修改已安装apk的packagename的权限:

runCommand("chmod 777 /data/data/packagename");

如果有什么问题,请大家多多指正,谢谢。。

本文参考来自http://lazyhack.net/writing-an-android-root-application/的博客。


更多相关文章

  1. 浅谈Android系统进程间通信(IPC)机制Binder中的Server和Client获得
  2. Android的属性Property系统
  3. Android 图形系统之图形缓冲区分配
  4. Android窗口系统第三篇---WindowManagerService中窗口的组织方式
  5. Android系统多媒体框架添加对.wma格式的支持
  6. [Hi3751V811][Android8.0]系统按键的转换 - android键值的映射
  7. 理解WebKit和Chromium: 调试Android系统上的Chromium

随机推荐

  1. Android精讲--界面编程3
  2. Android移动应用开发:众筹APP
  3. 远程服务使用AIDL通信
  4. 如何在Activity调用surfaceView实现透明
  5. Android核心模块内容概述
  6. 教你如何开关Android的APN网络
  7. Android线程之消息机制(Handler、Message
  8. 你不知道一些神奇Android(安卓)Api-比如文
  9. Android线程间通信的Message机制
  10. Unity与Android权限设置