`
44289533
  • 浏览: 66965 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

手机网络环境相关的代码

阅读更多
获取本机IP、MAC,判断网络是否可用,获取wifi状态


public class NetworkUtil {

	/**
	 * 获取本机IP
	 * 
	 * @return
	 */
	public static String getIpAddress() {
		try {
			Enumeration<NetworkInterface> enumeration = NetworkInterface
					.getNetworkInterfaces();
			while (enumeration.hasMoreElements()) {
				NetworkInterface nextElement = enumeration.nextElement();
				Enumeration<InetAddress> enIp = nextElement.getInetAddresses();
				while (enIp.hasMoreElements()) {
					InetAddress ipaddress = enIp.nextElement();
					if (!ipaddress.isLoopbackAddress()) {
						return ipaddress.getHostAddress().toString();
					}
				}
			}
		} catch (SocketException e) {
			e.printStackTrace();
		}
		return null;
	}

	/**
	 * 判断网络是否可用
	 * 
	 * @param context
	 * @return
	 */
	public static boolean isConnect(Context context) {
		// 获取手机所有连接管理对象(包括对wi-fi,net等连接的管理)
		try {
			ConnectivityManager connectivity = (ConnectivityManager) context
					.getSystemService(Context.CONNECTIVITY_SERVICE);
			if (connectivity != null) {
				// 获取网络连接管理的对象
				NetworkInfo info = connectivity.getActiveNetworkInfo();
				if (info != null && info.isConnected()) {
					// 判断当前网络是否已经连接
					if (info.getState() == NetworkInfo.State.CONNECTED) {
						return true;
					}
				}
			}
		} catch (Exception e) {
			Log.v("====", e.toString());
		}
		return false;
	}

	/**
	 * 获取本机MAC地址
	 * 
	 * @param ctx
	 * @return
	 */
	public static String getMacAddress(Context ctx) {
		WifiManager wfMgr = (WifiManager) ctx
				.getSystemService(Context.WIFI_SERVICE);
		WifiInfo info = wfMgr.getConnectionInfo();
		return info.getMacAddress();
	}

	/**
	 * 获取wifi状态
	 * 
	 * @param ctx
	 * @return
	 */
	public static String getNetWorkStatus(Context ctx) {
		WifiManager wfMgr = (WifiManager) ctx
				.getSystemService(Context.WIFI_SERVICE);
		int state = wfMgr.getWifiState();
		String status = null;
		switch (state) {
		case WifiManager.WIFI_STATE_DISABLED:
			status = "使用不可(DISABLED)";
			break;
		case WifiManager.WIFI_STATE_DISABLING:
			status = "停止中(DISABLING)";
			break;
		case WifiManager.WIFI_STATE_ENABLED:
			status = "使用可(ENABLED)";
			break;
		case WifiManager.WIFI_STATE_ENABLING:
			status = "起動中(ENABLING)";
			break;
		case WifiManager.WIFI_STATE_UNKNOWN:
			status = "未知(UNKNOWN)";
			break;
		}
		WifiInfo info = wfMgr.getConnectionInfo();
		status += " AP MAC(" + info.getBSSID() + ") DBM値(" + info.getRssi()
				+ ")";
		return status;
	}

}

 

分享到:
评论

相关推荐

    JAVA 手机网络游戏源代码

    【JAVA手机网络游戏源代码】是一个涉及多个IT领域的项目,主要基于JAVA编程语言,适用于开发手机网络游戏。这个项目包含了完整的系统源代码以及与之配套的数据库设计,确保在Windows XP操作系统下,通过Eclipse集成...

    android wifi网络摄像头源代码

    8. **用户界面**:Android应用的用户界面(UI)设计也很关键,源代码中可能包含了设置摄像头、连接网络、显示视频预览等相关界面元素的实现。 9. **兼容性测试**:由于Android设备的多样性,源代码可能需要处理不同...

    j2me 手机游戏 网络扑克牌对战源代码.rar

    这个压缩包中的内容是基于J2ME开发的一款手机网络游戏——扑克牌对战游戏的源代码。对于想要了解J2ME游戏开发或者对扑克牌游戏逻辑感兴趣的开发者来说,这是一个宝贵的资源。 首先,让我们深入了解一下J2ME的基础。...

    手机服务器源代码

    【手机服务器源代码】是指专为手机设备设计和构建的服务器应用程序的源代码,它允许开发者在移动设备上实现服务器功能。在这个特定的案例中,提供的压缩包文件名为"WebSite5",暗示可能是一个基于Web的应用服务器...

    java手机开发入门框架代码

    这个"java手机开发入门框架代码"很可能是为初学者准备的一个基础开发环境,包含了必要的库、示例代码和可能的开发工具。下面将详细阐述Java在手机开发中的应用及其相关知识点。 1. **Java ME简介**: Java ME是...

    手机开发代码 J2ME

    在“手机开发代码 J2ME”这个主题中,我们可以深入探讨以下几个关键知识点: 1. **J2ME架构**:J2ME由配置(Configurations)和框架(Profiles)组成。配置定义了设备的基本硬件和软件能力,如Connected Limited ...

    手机操作系统原代码

    手机操作系统原代码是深入理解移动设备核心运行机制的关键,它涉及到操作系统内核、用户界面、应用程序框架以及系统服务等多个层面。在这个领域,Android 和 C# 都是非常重要的元素。Android 是全球最广泛使用的智能...

    课程设计手机网络游戏源代码及使用说明书

    在本课程设计中,我们将深入探讨手机网络游戏的开发,包括源代码分析和使用说明书的细节。这是一项涉及软件工程、游戏设计与编程实践的重要任务,旨在帮助学生掌握移动平台游戏开发的关键技能。以下是对相关知识点的...

    手机软件设计程序的源代码

    7. **测试**:对软件进行单元测试、集成测试和系统测试,确保其在不同设备和网络环境下的稳定性和性能。 8. **性能优化**:针对手机硬件资源有限和网络带宽低的特点,源代码需要优化,比如减少HTTP请求、压缩数据、...

    java手机游戏50例代码

    Java手机游戏50例代码集合是一份非常宝贵的资源,它涵盖了Java在移动设备上开发游戏的各种实例。这个压缩包中的代码实例旨在帮助开发者理解和学习如何使用Java语言来创建丰富的、互动的游戏体验。以下是对这些知识点...

    手机管理系统源代码(虽然简单仅供大家参考)

    总的来说,这个简单的手机管理系统源代码项目为学习者提供了了解和实践J2ME开发、移动应用设计、数据管理以及网络通信等多个IT领域的宝贵机会。通过深入研究并理解这些代码,开发者不仅可以提升编程技能,还能对手机...

    Java手机游戏扫雷源代码

    通过分析这个Java手机游戏扫雷的源代码,开发者不仅能学习到基本的游戏编程技巧,还能深入理解J2ME环境下的资源管理和优化方法,这对于想要进入移动游戏开发领域的初学者来说是一份宝贵的教材。

    手机版课程表源代码

    【chapter2_课程表小精灵】这一文件名可能是源代码的某个章节或者模块,它可能包含与课程表核心功能相关的代码,如课程数据的加载、显示逻辑,或者特定功能的实现,如搜索和提醒功能。 综上所述,【手机版课程表源...

    android手机开发源代码--7、8

    这些源代码适用于Google手机开发,并可以在Eclipse集成开发环境中(推荐使用Android 1.5 SDK)进行编译和运行。 首先,了解Android平台是至关重要的。Android是由Google主导开发的开源移动操作系统,它基于Linux...

    Java赌神游戏网络版源代码

    此外,可能还涉及到线程管理和并发控制,以保证在网络环境下的平稳运行。 源代码分析方面,我们可以期待看到以下几个关键部分: 1. **游戏逻辑**:这是游戏的核心部分,包括赌博规则的实现、随机数生成器(用于...

    蜀山传手机游戏原代码

    7. **网络功能**:如果游戏包含在线功能,如排行榜或同步数据,源代码中会有相关的网络通信代码,可能使用HTTP或Socket进行数据交换。 8. **用户界面**:J2ME提供了基本的UI组件,如Form、Item等。开发者需要创建并...

    J2me手机游戏捉鬼源代码

    在这个标题为“J2me手机游戏捉鬼源代码”的项目中,我们讨论的是一个基于 J2ME 的手机游戏,它允许用户在手机上体验“捉鬼”游戏的乐趣。开发者提供了源代码,使得有兴趣的人可以深入学习游戏的实现机制,或者对代码...

    手机宝石游戏源代码

    下面我们将深入探讨手机宝石游戏源代码的相关知识点。 1. **游戏引擎**:手机宝石游戏可能基于Unity、Cocos2d-x、Unreal Engine、Corona SDK等游戏引擎开发。这些引擎提供图形渲染、物理模拟、资源管理等功能,加速...

    java me 手机应用开发源代码

    通过研究这些源代码,你可以学习到如何使用J2ME进行手机应用开发,包括如何创建MIDlets,设计用户界面,实现网络通信,以及存储和读取数据。此外,对于游戏开发部分,你可以深入理解如何利用J2ME的图形API来创建动态...

Global site tag (gtag.js) - Google Analytics