• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
宝宝儿
博客园    首页    新随笔    联系   管理    订阅  订阅

Android判断网络状态

复制代码
package com.ch.services;

import com.ch.utils.NetWorkUtils;

import android.app.Service;
import android.content.Intent;
import android.os.IBinder;
import android.util.Log;
//这是后台 Service
public class CopyOfOffLineService extends Service{
    
    @Override
    public int onStartCommand(Intent intent, int flags, int startId) {
        // TODO Auto-generated method stub
//new一个新类 判断网络 NetWorkUtils netUtils = new NetWorkUtils(getApplicationContext()); int i = netUtils.netWorkType();//获得当前网络状态类型 //1.wifi 2.移动网路 3.没网
if(i == 1){ //请求数据,并保存 Log.i("TAG", "开始离线下载......"); }else if(i == 2){ Log.i("TAG", "提示是移动数据,是否继续下载......"); }else{ Log.i("TAG", "没网,不需要下载......"); } return super.onStartCommand(intent, flags, startId); } @Override public IBinder onBind(Intent intent) { // TODO Auto-generated method stub return null; } }
复制代码
复制代码
package com.ch.utils;

import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.telephony.TelephonyManager;
import android.util.Log;

public class NetWorkUtils {
    Context mcontext;
    public NetWorkUtils(Context mcontext){
        this.mcontext = mcontext;
    }
    
    public int netWorkType(){
//获取管理 ConnectivityManager mConnectivity = (ConnectivityManager)mcontext.getSystemService(Context.CONNECTIVITY_SERVICE); TelephonyManager mTelephony = (TelephonyManager)mcontext.getSystemService(Context.TELEPHONY_SERVICE); //检查网络连接 NetworkInfo info = mConnectivity.getActiveNetworkInfo(); if (info == null || !mConnectivity.getBackgroundDataSetting()) { Log.i("TAG","网络未连接....."); return 3; } int netType = info.getType(); int netSubtype = info.getSubtype(); Log.i("TAG",netType+",,"+netSubtype+",,"+mTelephony.isNetworkRoaming()); if (netType == ConnectivityManager.TYPE_WIFI) { //WIFI Log.i("TAG","wifi连接....."); return 1; } else if (netType == ConnectivityManager.TYPE_MOBILE && netSubtype == TelephonyManager.NETWORK_TYPE_UMTS && !mTelephony.isNetworkRoaming()) { //MOBILE Log.i("TAG","移动数据连接....."); return 2; } return 3; } }
复制代码
posted @ 2016-03-25 19:53  宝宝儿  阅读(177)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3