/**
* 获取静态IP的相关信息
* @param context
* @return
*/
public Map<String,String> getIps(Context context){
Map<String,String> ipMaps = new HashMap<String,String>();
try {
String ETHERNET_SERVICE = (String) Context.class.getField("ETHERNET_SERVICE").get(null);
Class<?> ethernetManagerClass = Class.forName("android.net.EthernetManager");
Object ethernetManager = context.getSystemService(ETHERNET_SERVICE);
Field mService = ethernetManagerClass.getDeclaredField("mService");
// 设置访问权限
mService.setAccessible(true);
Object mServiceObject = mService.get(ethernetManager);
Class<?> iEthernetManagerClass = Class.forName("android.net.IEthernetManager");
Method[] methods = iEthernetManagerClass.getDeclaredMethods();
for (Method ms : methods) {
String methodName = ms.getName();
if("getGateway".equals(methodName)){ // 网关
String gate = (String)ms.invoke(mServiceObject);
ipMaps.put("gateWay",gate);
}else if("getNetmask".equals(methodName)){ // 子网掩码
String mask = (String)ms.invoke(mServiceObject);
ipMaps.put("maskAddress",mask);
}else if("getIpAddress".equals(methodName)){ // IP地址
String ipAddr = (String)ms.invoke(mServiceObject);
ipMaps.put("ipAddress",ipAddr);
}else if("getDns".equals(methodName)){ // DNS(注意解析)
String dnss = (String)ms.invoke(mServiceObject);
String []arrDns = dnss.split("\\,");
String dns = null;
if(arrDns != null){
dns = arrDns[0];
ipMaps.put("dns",dns);
}
}
}
} catch (Exception e) {
Log.d(TAG, "Exception : ",e);
}
return ipMaps;
}
**
系统时间相关的设置看这里
**