在Java程序中调用Runtime.getRuntime().exec()方法执行一些命令的时候
如果执行的是 获取信息的命令 可以顺利执行
如果执行的是 设置属性的命令 运行结果显示的也是正确的 可是被设置的属性的值却没有改变 在LogCat中看到的是“init: sys_prop: permission denied uid:XXXXX  name:XXXXXXXXX”这样的错误提示 
请问各位有没有遇到过 没有有解决的办法 谢谢

解决方案 »

  1.   

    你在AndroidManifest.xml中声明权限了吗》
      

  2.   

    AndroidManifest.xml 中添加
    <uses-permission android:name="android.permission.相关权限" />
      

  3.   

    可以具体说一下 要设置那些权限吗?我已经设置了
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.READ_OWNER_DATA" />
    <uses-permission android:name="android.permission.WRITE_SETTINGS" />
    <uses-permission android:name="android.permission.WRITE_OWNER_DATA" />
    这些权限 还是不行
      

  4.   

    主要是执行java程序运行的用户的权限问题,android默认会为任何执行一个java程序创建一个单独的用户,但这个用户的权限比较低。具体可看看App 权限一点知识
    http://www.eoeandroid.com/thread-4308-1-1.html但修改运行程序的用户,需在源代码编译环境。
      

  5.   

    我在调用SystemProperties.set()是也出现了
    init: sys_prop: permission denied uid:10002
     name xxx
    燃耗在AndroidManifest.xml里添加
    <uses-permission android:name="android.permission.ACCESS_CHECKIN_PROPERTIES" />
    <uses-permission android:name="android.permission.FACTORY_TEST"/>
    android:sharedUserId="android.uid.system" 后
    init: sys_prop: permission denied uid:1000 name xxx
    看来system uid = 1000这个特殊权限进程也不行。不知道用什么方法可以修改到android的system properity
      

  6.   

    apk能不能修改和能修改哪些system properity跟执行java程序运行的用户的权限有关
    例如uid=system有修改大部分属性的权限,但也不是任意自定义的属性都是可以修改的
    但形如以下的系统属性是可以修改的
    "net.xx","dev.xx","runtime.xx","hw.xx","sys.xx","service.xx","wlan.xx","dhcp.xx",
    "persist.sys.xx","persist.service.xx“等
      

  7.   

    http://hi.baidu.com/thenightthemoonthewater/blog/item/3e02103456c1d9305bb5f5eb.html/cmtid/233f473e5e6ca53070cf6cff这是你的解决方案?
      

  8.   

    我把文件放到res目录下!怎么调用这句话复制到sd卡呢?
      

  9.   

    Runtime.getRuntime().exec()只能执行权限以内的指令。
    手机root后,且应用申请root权限后才能执行所有指令。
    (注意模拟器并没有root,因为su命令没有开放权限,要改android源码,去掉su.c里的权限限制才真正root)