ConnectivityManage——基础用法(一)
来源:互联网 发布:希尔伯特矩阵理解 编辑:程序博客网 时间:2024/05/29 09:43
ConnectivityManage基础用法(一)
判断是否有网络连接
ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo networkInfo = connectivityManager.getActiveNetworkInfo(); if (networkInfo!=null&&networkInfo.isAvailable()){ Toast.makeText(context,"network is available",Toast.LENGTH_SHORT).show(); }else { Toast.makeText(context, "network is unavailable", Toast.LENGTH_SHORT).show(); }
ConnectivityManage 是一个专门用来管理网络连接的服务类
调用它的getActivieNetworkInfo()方法获取到NetworkInfo的实例
通过NetworkInfo 判断是否连接网络
------------------------------------------分割线---------------------------------------------------(QwQ)
判断网络连接 就离不开 广播了
动态注册一个广播(T。T)代码如下
public class MainActivity extends AppCompatActivity { private IntentFilter intentFilter; private NetwokChangeReceiver netwokChangeReceiver; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); intentFilter = new IntentFilter();//IntentFilter 是隐式Intent的过滤器 intentFilter.addAction("android.net.conn.CONNECTIVITY_CHANGE"); //设置过滤条件 netwokChangeReceiver = new NetwokChangeReceiver(); //实例化一条广播 registerReceiver(netwokChangeReceiver,intentFilter);//注册广播 } @Override protected void onDestroy() { super.onDestroy(); unregisterReceiver(netwokChangeReceiver); //取消注册广播 } class NetwokChangeReceiver extends BroadcastReceiver{ @Override public void onReceive(Context context, Intent intent) { ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo networkInfo = connectivityManager.getActiveNetworkInfo(); if (networkInfo!=null&&networkInfo.isAvailable()){ Toast.makeText(context,"network is available",Toast.LENGTH_SHORT).show(); }else { Toast.makeText(context, "network is unavailable", Toast.LENGTH_SHORT).show(); } } }}
还需要在AndroidManifest.xml中声明访问系统网络的权限
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>
0 0
- ConnectivityManage——基础用法(一)
- HTML5标签用法总结——基础篇(一)
- JSTL中function 基础用法(一)
- Git的基础用法(一)
- android RecylearView笔记(一)基础用法
- xUtils(一)-ViewUtils基础用法
- python numpy基础(一)基本用法
- Redux(一: 基础用法)
- 算法基础(一)——基础
- 算法基础(一)——基础 .
- C++ 基础(一) —— 基础
- Android DataBinding 基础用法一
- quick-cocos2d-x 基础控件用法-------UILabel、UIPushButton(一)
- Html基础标签了解及用法(一)
- Android基础学习笔记之-ListView用法(一)
- ANDROID STUDIO 使用 AIDL(一)基础用法
- 黑马程序员——Java基础---基础语法(一)
- Android基础——Fragment基础入门(一)
- 安装Microsoft Windows SDK 7.1时出现的错误(附解决办法)
- xcode第二次运行iOS程序报错LaunchServicesError error 0
- [Mybatis] Mapper接口原理分析
- 新浪微博登录
- RxJava入门系列四,Android中的响应式编程
- ConnectivityManage——基础用法(一)
- ScrollView 中 第一个CELL 异常错位
- xmpp单点登录
- iOS 如何移除用for循环创建的CAShapelayer直线中的某几条
- 二维数组操作(编程题---简单)
- iOS 启动页image大小
- SpringMVC自学笔记1
- MPMoviePlayerViewController播放MP4(H264+aac)
- [学习笔记]Linux工作管理