• Android 判断是否有手机是否有网络


    新建项目 GPRS

    简单的布局

    给 button 绑定点击事件,点击控件会产生两种可能,如果有网络就显示“有网络”,如果没有网络显示“没有网络”.

    第一给button绑定点击事件代码如下:

    新建一个类 :OnClickNetWerk.java

     1 package com.example.gprs;
     2 
     3 import android.app.Activity;
     4 import android.content.Context;
     5 import android.net.ConnectivityManager;
     6 import android.net.NetworkInfo;
     7 import android.view.View;
     8 import android.view.View.OnClickListener;
     9 import android.widget.TextView;
    10 import android.widget.Toast;
    11 
    12 public class OnClickNetWerk implements OnClickListener{
    13     private Context context ;
    14     private TextView textView ;
    15     private ConnectivityManager cm ;
    16     public OnClickNetWerk(Context context){
    17         this.context = context;
    18     }
    19     
    20     @Override
    21     public void onClick(View v) {
    22         Activity act = (Activity) context;
    23         textView = (TextView) act.findViewById(R.id.textView1);
    24         
    25         int color ; //存放颜色
    26         String text ; //存放显示的内容
    27         
    28         NetworkInfo netIntfo = null;
    29         try {
    30             cm = (ConnectivityManager) act.getSystemService(act.CONNECTIVITY_SERVICE);
    31             netIntfo =  cm.getActiveNetworkInfo();
    32         } catch (Exception e) {
    33             //异常处理 
    34             Toast.makeText(act, "没有网络权限,请给予相关权限", Toast.LENGTH_LONG).show();
    35         }
    36         
    37         if(netIntfo==null){
    38             //如果没有网络 显示不正常
    39             text = act.getResources().getString(R.string.netWerk_1);
    40             color = act.getResources().getColor(R.color.palegreen);
    41             
    42         }else{
    43             //如果没有网络 显示不正常
    44             text = act.getResources().getString(R.string.netWerk_0);
    45             color = act.getResources().getColor(R.color.beige);
    46             
    47         }
    48         //设置文本
    49         textView.setText(text);
    50         //设置背景颜色
    51         textView.setBackgroundColor(color);
    52         
    53         
    54         
    55     }
    56 
    57 }

     注:

      1.最好给如下代码加入异常处理,预防出现权限的报错,把整个程序终止了。

      
    cm=(ConnectivityManager)act.getSystemService(act.CONNECTIVITY_SERVICE);
        netIntfo =  cm.getActiveNetworkInfo();

      2.给程序加入相关的网络权限(AndroidManifest.xml)

      

      <uses-permission android:name="android.permission.INTERNET"/>
      <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>

      

    第二:在MainActivity.java

      代码如下:

    package com.example.gprs;
    
    import android.app.Activity;
    import android.os.Bundle;
    import android.widget.Button;
    
    
    public class MainActivity extends Activity {
        private Button but ;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            but =  (Button) this.findViewById(R.id.isGprs);
            but.setOnClickListener( new OnClickNetWerk(this));
            
        }
                
    }
  • 相关阅读:
    译 PrestaShop开发者指南 第三篇 设置本地安装环境
    译 PrestaShop开发者指南 第二篇 代码规范
    [译]PrestaShop开发者指南 第一篇 基础
    Discuz!X3解读之类引入机制及目录结构
    Discuz的缓存体系
    x3d 规范 在线镜像版
    大容量数据库对表做分割
    链表 队列 堆栈 视频
    How ASP.NET MVC Works?
    SQLServer查看和解决死锁的方法
  • 原文地址:https://www.cnblogs.com/zhen123/p/6085812.html
Copyright © 2020-2023  润新知