Android判断设备网络连接状态及判断连接方式的方法

本文实例讲述了Android判断设备网络连接状态及判断连接方式的方法。分享给大家供大家参考,具体如下:

在Android开发过程中,对于一个需要连接网络的Android设备,对设备的网络状态检测是很有必要的!有很多的App都需要连接网络。判断设备是否已经连接网络,并且在连接网络的状态下判断是wifi无线连接还是GPRS手机网络连接,这样就可以在不同的网络连接下去调用不同的方法,处理不同的事情。这些功能都写在了下面的代码中了!请看主要代码如下:

/** * 检测网络是否连接 * @return */ private boolean checkNetworkState() { boolean flag = false; //得到网络连接信息 manager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); //去进行判断网络是否连接 if (manager.getActiveNetworkInfo() != null) { flag = manager.getActiveNetworkInfo().isAvailable(); } if (!flag) { setNetwork(); } else { isNetworkAvailable(); } return flag; } /** * 网络未连接时,调用设置方法 */ private void setNetwork(){ Toast.makeText(this, "wifi is closed!", Toast.LENGTH_SHORT).show(); AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setIcon(R.drawable.ic_launcher); builder.setTitle("网络提示信息"); builder.setMessage("网络不可用,如果继续,请先设置网络!"); builder.setPositiveButton("设置", new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { Intent intent = null; /** * 判断手机系统的版本!如果API大于10 就是3.0+ * 因为3.0以上的版本的设置和3.0以下的设置不一样,调用的方法不同 */ if (android.os.Build.VERSION.SDK_INT > 10) { intent = new Intent(android.provider.Settings.ACTION_WIFI_SETTINGS); } else { intent = new Intent(); ComponentName component = new ComponentName( "com.android.settings", "com.android.settings.WirelessSettings"); intent.setComponent(component); intent.setAction("android.intent.action.VIEW"); } startActivity(intent); } }); builder.setNegativeButton("取消", new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { } }); builder.create(); builder.show(); } /** * 网络已经连接,然后去判断是wifi连接还是GPRS连接 * 设置一些自己的逻辑调用 */ private void isNetworkAvailable(){ State gprs = manager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState(); State wifi = manager.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState(); if(gprs == State.CONNECTED || gprs == State.CONNECTING){ Toast.makeText(this, "wifi is open! gprs", Toast.LENGTH_SHORT).show(); } //判断为wifi状态下才加载广告,如果是GPRS手机网络则不加载! if(wifi == State.CONNECTED || wifi == State.CONNECTING){ Toast.makeText(this, "wifi is open! wifi", Toast.LENGTH_SHORT).show(); loadAdmob(); } }

希望本文所述对大家Android程序设计有所帮助。

时间: 2024-09-20 00:32:38

Android判断设备网络连接状态及判断连接方式的方法的相关文章

Android判断设备网络连接状态及判断连接方式的方法_Android

本文实例讲述了Android判断设备网络连接状态及判断连接方式的方法.分享给大家供大家参考,具体如下: 在Android开发过程中,对于一个需要连接网络的Android设备,对设备的网络状态检测是很有必要的!有很多的App都需要连接网络.判断设备是否已经连接网络,并且在连接网络的状态下判断是wifi无线连接还是GPRS手机网络连接,这样就可以在不同的网络连接下去调用不同的方法,处理不同的事情.这些功能都写在了下面的代码中了!请看主要代码如下: /** * 检测网络是否连接 * @return *

Android连接网络的时候对网络的状态进行判断

Android连接网络的时候,并不是每次都能连接到网络,因此在程序启动中需要对网络的状态进行判断,如果没有网络则提醒 用户进行设置. 首先,要判断网络状态,需要有相应的权限,下面为权限代码(AndroidManifest.xml): <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> <uses-permission android:name="android.p

Android便携式热点的开启状态检测和SSID的获取方法

WIFI热点的开启状态和开启后的SSID如何获取呢? 打开WifiManager.java源码,可找到 getWifiApState() 方法,惊喜的发现直接调用这个方法就能获取到热点的状态,然而在调用的时候并不能调用到这个方法...这个方法被隐藏起来了,目前我是通过反射调用的. /** * Gets the Wi-Fi enabled state. * @return One of {@link #WIFI_AP_STATE_DISABLED}, * {@link #WIFI_AP_STATE

Android获取设备CPU核数、时钟频率以及内存大小的方法_Android

本文实例讲述了Android获取设备CPU核数.时钟频率以及内存大小的方法.分享给大家供大家参考,具体如下: 因项目需要,分析了一下 Facebook 的开源项目 - Device Year Class. Device Year Class 的主要功能是根据 CPU核数.时钟频率 以及 内存大小 对设备进行分级.代码很简单,只包含两个类: DeviceInfo -> 获取设备参数, YearClass -> 根据参数进行分级. 下表是 Facebook 公司提供的分级标准,其中 Year 栏表

android检测网络连接状态示例讲解_Android

Android连接首先,要判断网络状态,需要有相应的权限,下面为权限代码(AndroidManifest.xml): 复制代码 代码如下: <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/><uses-permission android:name="android.permission.INTERNET"/> 然后,检测网络状态是否可用 复制代码

android检测网络连接状态示例讲解

Android连接首先,要判断网络状态,需要有相应的权限,下面为权限代码(AndroidManifest.xml):复制代码 代码如下:<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/><uses-permission android:name="android.permission.INTERNET"/> 然后,检测网络状态是否可用复制代码 代码

联想Win10系统下怎么连接蓝牙音箱 联想笔记本连接蓝牙音箱方法

实验环境:   电脑:联想昭阳K20-80笔记本   音箱:哈曼卡顿Esquire Mini音箱   操作系统:Windows 10 RS1   注意:连接蓝牙音箱前,请先确认您的电脑是否带有蓝牙功能.   1.在电脑上依次点击开始-设置,打开系统设置窗口,如图:     2.点击"设备",在窗口左侧选择"蓝牙",右侧检查并开启电脑的蓝牙设备开关,如图:     3.按下蓝牙音箱上的电源开关键打开蓝牙音箱:     此时蓝牙音箱上一般会有电源指示灯亮起,表示蓝牙音箱

Android编程获取网络连接方式及判断手机卡所属运营商的方法_Android

本文实例讲述了Android编程获取网络连接方式及判断手机卡所属运营商的方法.分享给大家供大家参考,具体如下: 问题:项目中写的网络模块,感觉有点乱:两套代码 --模拟器.真机,维护起来十分麻烦. 解决办法:代码自动去检查到那种网络环境,然后调用不同的联网方式. 查看了模拟器上默认的接入点:移动网络 -- APN = "internet" 1.通过获取apn的名称,来判断网络 // 获取Mobile网络下的cmwap.cmnet private int getCurrentApnInU

android判断无网络连接的时候弹出是否设置

问题描述 android判断无网络连接的时候弹出是否设置 如题,如何在打开应用的时候判断网络是否连接 如果没有网络那就出一个提示是否设置的框 解决方案 参见http://blog.csdn.net/wangjia55/article/details/7924664http://www.cnblogs.com/qingblog/archive/2012/07/19/2598983.html