主要实现方法:
1.给ConnectivityManager添加打开及关闭的方法
2.调用到ConnectivityService这里实现具体方法
包括 Thering中的方法,其中iface需要指定为rndis0,要配置
try {
ifcg = mNetd.getInterfaceConfig(iface);
if (ifcg != null) {
InetAddress addr = NetworkUtils.numericToInetAddress(mLocalAddr);
ifcg.setLinkAddress(new LinkAddress(addr, 24));
if (enabled) {
ifcg.setInterfaceUp();
} else {
ifcg.setInterfaceDown();
}
ifcg.clearFlag("running");
mNetd.setInterfaceConfig(iface, ifcg);
}
} catch (Exception e) {
Log.e(TAG, "Error configuring interface " + iface, e);
return false;
}
即可