直接上代码:
public static String getLocalEthernetMacAddress() {
String mac=null;
try {
Enumeration localEnumeration=NetworkInterface.getNetworkInterfaces();
while (localEnumeration.hasMoreElements()) {
NetworkInterface localNetworkInterface=(NetworkInterface) localEnumeration.nextElement();
String interfaceName=localNetworkInterface.getDisplayName();
if (interfaceName==null) {
continue;
}
if (interfaceName.equals("eth0")) {
// MACAddr = convertMac(localNetworkInterface
// .getHardwareAddress());
mac=convertToMac(localNetworkInterface.getHardwareAddress());
if (mac!=null&&mac.startsWith("0:")) {
mac="0"+mac;
}
break;
}
// byte[] address =
// localNetworkInterface.getHardwareAddress();
// Log.i(TAG, "mac=" + address.toString());
// for (int i = 0; (address != null && i < address.length);
// i++)
// {
// Log.i("Debug", String.format(" : %x", address[i]));
// }
}
} catch (SocketException e) {
e.printStackTrace();
}
return mac;
}
private static String convertToMac(byte[] mac) {
StringBuilder sb=new StringBuilder();
for (int i=0; i<mac.length; i++) {
byte b=mac[i];
int value=0;
if (b>=0&&b<=16) {
value=b;
sb.append("0"+Integer.toHexString(value));
} else if (b>16) {
value=b;
sb.append(Integer.toHexString(value));
} else {
value=256+b;
sb.append(Integer.toHexString(value));
}
if (i!=mac.length-1) {
sb.append(":");
}
}
return sb.toString();
}
无线的:
private static String getWifiMacAddr(Context context, String macAddr) {
WifiManager wifi=(WifiManager) context.getSystemService(Context.WIFI_SERVICE);
WifiInfo info=wifi.getConnectionInfo();
if (null!=info) {
String addr=info.getMacAddress();
if (null!=addr) {
KeelLog.d("getWifiMacAddr:"+addr);
macAddr=addr;
}
}
return macAddr;
}
分享到:
相关推荐
在Android平台上开发针对机顶盒的应用,需要考虑到与手机开发的区别。首先,机顶盒的硬件配置通常高于手机,这为高性能应用提供了可能性。CPU、内存和存储设备的增强使得机顶盒能够运行更为复杂和资源密集型的程序,...
本文将详细解析如何使用Android手机作为遥控器来控制Android智能机顶盒,实现类似鼠标、上下左右移动以及震动功能,从而让手机成为机顶盒的全能控制器,特别适用于游戏和其他交互式应用。 首先,实现这一功能的关键...
《SecureCRT:连接Android机顶盒与Linux远程服务器的利器》 SecureCRT是一款强大的终端模拟器,它在IT行业中被广泛用于远程访问和管理Linux服务器、Unix系统以及Android设备,尤其是那些配备有串口线的机顶盒。本文...
在Android平台上,机顶盒(Set-Top Box,STB)UI设计是为电视机提供交互界面的关键部分。"android 机顶盒UI demo"是一个专为开发者设计的示例项目,它展示了如何构建一个功能丰富的电视用户界面。这个Demo不仅包含了...
在Android平台上,开发一款机顶盒应用涉及到许多关键的技术点,特别是当涉及到视频播放功能时。本主题聚焦于"Android机顶盒开发的视频播放",特别提到了使用GSYVideoPlayer解决快进快退问题。GSYVideoPlayer是一款...
中兴机顶盒通常采用先进的嵌入式系统,如Linux或者Android作为操作系统,以便提供丰富的功能和用户体验。 修改工具在这里通常指的是对机顶盒固件或者应用程序进行定制的工具。这些工具可能包括但不限于以下几类: ...
Android机顶盒源码是开发和定制Android智能电视盒或IPTV设备的关键资源,它提供了深入理解系统工作原理和自定义功能实现的机会。这里我们将深入探讨Android机顶盒源码的相关知识点,以及如何利用这些源码进行开发和...
在现代家庭娱乐系统中,Android机顶盒已经成为了连接电视与互联网的重要桥梁,它提供了丰富的应用程序、流媒体服务以及游戏等内容。然而,由于机顶盒的遥控器操作相对局限,有时候用户可能希望有一种更加便捷的方式...
- **机顶盒类型**:机顶盒分为有线电视盒、IPTV盒、网络电视盒(如Android TV盒)等,它们主要用于接收和解码数字电视信号,或通过互联网流媒体服务播放视频内容。 - **操作系统**:大多数现代机顶盒采用开源的...
2. 启动应用,界面会提示您输入相关参数,例如机顶盒的MAC地址、当前的ADB状态(是否已开启)等。这些信息通常可以在机顶盒的系统设置或网络信息中找到。 3. 输入完毕后,点击“计算”按钮,应用将根据提供的信息...
5. **无线监控**:IVMS-4500HD支持无线连接,这意味着你可以通过家中的Wi-Fi网络,将监控摄像头的视频流传输到机顶盒上,无需额外的有线连接。 6. **自定义线路**:用户可以根据自己的需求添加和管理不同的监控线路...
本主题主要关注如何在Android机顶盒上解析和播放m3u8文件,实现流畅的视听体验。 **m3u8文件解析** m3u8文件是基于文本的播放列表格式,用于存储多媒体资源的URL列表。每个条目代表一个媒体段,通常这些段是TS...
1. Android机顶盒USB自动升级的概念: Android机顶盒是一种嵌入式设备,主要用于提供互联网视频内容到电视等显示设备。在机顶盒的日常运维过程中,常常需要进行系统升级,以修复软件缺陷或更新业务需求。传统升级...
2. **亿典S1机顶盒**:亿典S1是一款基于Android系统的网络电视机顶盒,它可以接收网络信号,让用户通过大屏幕电视观看在线视频、流媒体服务、玩游戏和使用各种应用程序。其烧录工具是为了让用户能够自定义或升级设备...
关于基于Android系统的有线智能机顶盒设计,本知识点涉及以下核心内容: 1. Android系统与智能机顶盒的特点及融合 2. 智能机顶盒的定义及其相对于传统机顶盒的优势 3. Android系统的历史发展及其核心技术 4. 智能机...
在本文档中,主要介绍的是如何在不同型号的机顶盒上开启 ADB 功能,以便进行远程维护和调试。以下是针对几种常见机顶盒型号的 ADB 开启步骤: 1. **华为 EC6110-M** - 在设置中找到“更多”选项,然后选择“远程...
总的来说,智能机顶盒打开ADB的方法涉及到硬件连接、串口通信、命令行操作以及权限获取等多个步骤,是进行深入系统调试和定制的重要手段,对于熟悉Android系统和愿意探索机顶盒潜在功能的用户来说非常有用。...
### Android机顶盒开发问题详解 #### 一、引言 在Android机顶盒的开发过程中,开发者常常会遇到各种各样的技术难题。这些问题不仅包括软件层面的技术挑战,还可能涉及硬件兼容性等方面的问题。本文将针对“Android...
在IT领域,中兴机顶盒ADB工具是一个用于调试和管理智能电视盒,尤其是中兴品牌设备的重要工具。ADB(Android Debug Bridge)是Android系统提供的一种命令行工具,它允许开发者通过USB或网络连接,对Android设备进行...