zoukankan      html  css  js  c++  java
  • 网络管理器

     首先上一张原理图

      1.首先通过网络连接管理者获取管理对象

    ConnectivityManager con = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);

       2.通过使用ConnectvitityManager中的相关方法获取网络连接的额外信息

     关于ConnectivityManager的一些常用方法已经在图中指出,其他详细方法请参照API

    NetworkInfo networkInfo = connManager.getActiveNetworkInfo();

       然后我们就可以通过相关的额外信息来执行更多的操作了,可以根据网络情况来跳转到不同的操作.至于具体的东西还是看我们的需求.比如说针对不同的网络连接方式跳转到不同的页面..

    复制代码
    Context context = listActivity.getApplicationContext();
    ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);//获取系统的连接服务  
    NetworkInfo activeNetInfo = connectivityManager.getActiveNetworkInfo();//获取网络的连接情况  
    if(activeNetInfo.getType()==ConnectivityManager.TYPE_WIFI){  
        //WIFI网络跳转的页面. 
    }else if(activeNetInfo.getType()==ConnectivityManager.TYPE_MOBILE) {  
        //3G网络跳转的页面
    }  
    复制代码

      或者是当判断网络没有连接的时候跳转到Android网络设置的页面当中通知用户手动去连接网络.

    复制代码
    boolean available = networkInfo.isAvailable();  
    if(available){  
       Toast.makeText(getApplicationContext(),"当前网络可用",Toast.LENGTH_LONG).show();
    }else{  
       // 跳转到无线网络设置界面  
       startActivity(new Intent(android.provider.Settings.ACTION_WIRELESS_SETTINGS));  
    }  
  • 相关阅读:
    数据结构之二叉树解析
    并发出体验 -- 解决小规模并发下单的问题
    JDBC事务控制
    数据库中悲观锁与乐观锁的总结实践
    浅析实际项目中对数据库设计的一些思考
    Java中实现多线程的四种方式
    将本地文件上传至github
    git/github 生成密钥
    git常用命令
    解决git每次提交推送都要输入密码
  • 原文地址:https://www.cnblogs.com/liumin-txgt/p/13051014.html
Copyright © 2011-2022 走看看