/**
* @hide - set dhcp mode as default config
*/
public void setDefaultConf() {...}
参考setEthernetMode函数,往里面添加了下面的代码:
long ident = Binder.clearCallingIdentity()
try{
String ipAddr = "192.168.1.100"
String gwAddr = "192.168.1.1"
String maskAddr = "255.255.255.0"
String dns1Addr = "192.168.1.1"
String dns2Addr = "223.5.5.5"
EthernetDevInfo cfg = getSavedConfig()
cfg.setMode(ETHERNET_CONNECT_MODE_MANUAL)
cfg.setIpAddress(ipAddr)
cfg.setGateWay(gwAddr)
cfg.setNetMask(maskAddr)
cfg.setDns1(dns1Addr)
cfg.setDns2(dns2Addr)
mService.setStaticConfig(cfg)
} catch (RemoteException e) {
Log.e(TAG, "setEthernetMode failed")
} finally {
Binder.restoreCallingIdentity(ident)
}
可以调用system()函数。把linux系统命令拼成字符串,然后调用system去执行这个字符串就可以了。修改系统配置,需要root身份。
1、system函数:
原型:int system(const char * command);
功能:执行 dos(windows系统) 或 shell(Linux/Unix系统) 命令,参数字符串command为命令名
说明:在windows系统中,system函数直接在控制台调用一个command命令。在Linux/Unix系统中,system函数会调用fork函数产生子进程,由子进程来执行command命令,命令执行完后随即返回原调用的进程;
头文件:stdlib.h;
返回值:命令执行成功返回0,执行失败返回-1。
2、例程:
#include<stdio.h>#include<stdlib.h>
int main(){
system("del C:\\123.txt")//在控制台中,执行命令del C:\\123.txt,删除C盘目录下的123.txt文件
return 0
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)