首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > Android >

请问 Android Runtime.getRuntime().exec() 执行命令 权限有关问题

2012-03-23 
请教 AndroidRuntime.getRuntime().exec()执行命令 权限问题在Java程序中调用Runtime.getRuntime().exec()

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

[解决办法]
你在AndroidManifest.xml中声明权限了吗》
[解决办法]
AndroidManifest.xml 中添加
<uses-permission android:name="android.permission.相关权限" />
[解决办法]
主要是执行java程序运行的用户的权限问题,android默认会为任何执行一个java程序创建一个单独的用户,但这个用户的权限比较低。具体可看看

App 权限一点知识
http://www.eoeandroid.com/thread-4308-1-1.html

但修改运行程序的用户,需在源代码编译环境。
[解决办法]
我在调用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
[解决办法]
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“等
[解决办法]
http://hi.baidu.com/thenightthemoonthewater/blog/item/3e02103456c1d9305bb5f5eb.html/cmtid/233f473e5e6ca53070cf6cff

这是你的解决方案?
[解决办法]
楼上的办法可以一试。如果是我遇到这样的问题,一般都是在系统中去注册服务。
[解决办法]
楼上在不改源码的基础上,怎么去注册系统服务呀?

热点排行