当前位置:编程学习 > wap >>

android4.0应用程序调用二进制程序权限问题

我现在在弄一个PPPOE的拨号应用程序,使用一个shell脚本来实现拨号过程,shell主要拨号过程内容如下(也是从网上摘抄的^_^):
/system/bin/pppd pty "/system/xbin/pppoe -p /etc/ppp/pppoe.pid -I $IFACE -T 80 -U -m 1412" noipdefault noauth default-asyncmap nodefaultroute hide-password nodetach 
usepeerdns mtu 1492 mru 1492 noaccomp nodeflate nopcomp novj novjccomp user $USERNAME password $PSW lcp-echo-interval 10 lcp-echo-failure 2 linkname pppoe

现在问题是,在adb shell 中执行我这条shell脚本,可以执行,但是如果我运行程序,通过程序调用这条脚本,就会出现如下权限错误:
pppoe: Cannot create raw socket -- pppoe must be run as root.

注:pppoe的源码是我从网上下载的,然后放到我的源代码中编译出pppoe二进制程序。我的手机源代码编译的的是eng版本,应用程序也有system权限,调用的脚本名字叫pppoe_connect.sh,在运行程序之前,已经在adb shell中执行了chmod 4777 /system/bin/pppd, chmod 777 /system/xbin/pppoe, chmod 777 /system/etc/ppp/pppoe_connect.sh这些命令了。

求大神们赐教啊! android4.0 pppoe拨号 shell 脚本 --------------------编程问答-------------------- 你的手机要root才行。 run的时候,首先要su,切换到root权限,然后才可以跑pppoe. --------------------编程问答-------------------- 敢问兄台,如何通过应用程序切换到root ? 从网上我搜到类似这种函数调用(首先su):
Runtime.getRuntime.exec("su");//我改成Runtime.getRuntime.exec("/system/xbin/su")也不行
但是调试结果报错,执行这个函数出错,不能切换到su。

敢问阁下,你是如何让你的应用切换到su,从而使得应用具有root权限的呢?
补充:移动开发 ,  Android
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,