您的位置:首页 > 移动开发 > Android开发

Android 获取以太网Mac地址和IP地址

2016-01-29 16:11 639 查看
MAC:

private void setEthernetMac() {
BufferedReader reader = null;
String ethernetMac = getResources()
.getString(R.string.text_default_mac);
try {
reader = new BufferedReader(new FileReader(
"sys/class/net/eth0/address"));
ethernetMac = reader.readLine();
Log.v(TAG, "ethernetMac: " + ethernetMac);
if (ethernetMac == null || ethernetMac.trim().length() == 0) {
ethernetMac = getResources().getString(
R.string.text_default_mac);
textMac.setTextColor(Color.parseColor("#ff0000"));
} else {
ethernetMac = ethernetMac
+ getResources().getString(R.string.text_normal);
textMac.setTextColor(Color.parseColor("#00ff00"));
}
textMac.setText(ethernetMac);
} catch (Exception e) {
Log.e(TAG, "open sys/class/net/eth0/address failed : " + e);
} finally {
try {
if (reader != null)
reader.close();
} catch (IOException e) {
Log.e(TAG, "close sys/class/net/eth0/address failed : " + e);
}
}

}

IP:
private String getEthernetIp() {
String mEthIpAddress;

if (!isUsingStaticIp()) {

EthernetManager mEthManager = (EthernetManager) getSystemService(Context.ETHERNET_SERVICE);

String tempIpInfo;
String iface = mEthManager.getEthernetIfaceName();

tempIpInfo = SystemProperties.get("dhcp." + iface + ".ipaddress");
if ((tempIpInfo != null) && (!tempIpInfo.equals(""))) {
mEthIpAddress = tempIpInfo;
} else {
mEthIpAddress = getResources().getString(
R.string.text_default_ip);
}
return mEthIpAddress;

} else {
return Settings.System.getString(getContentResolver(),
Settings.System.ETHERNET_STATIC_IP);
}
}

private boolean isUsingStaticIp() {
return Settings.System.getInt(getContentResolver(),
Settings.System.ETHERNET_USE_STATIC_IP, 0) == 1 ? true : false;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: