android:getSystemService从非扩展活动类调用不起作用

时间:2013-06-18 21:06:44

标签: java android

我正在尝试测试我的应用的互联网连接,我正在使用“ConnectivityManager”进行测试。

我想调用ConnectivityManager类不是来自主类,而是来自一个专门用于连接测试的类。

第二个类中的方法“getSystemService”给了我一个错误,怎么来???

这是调用连接管理器类的主类:

   public void onClick(View v){
        Log.d("mytag", "in onclick");
   CheckInternetpermission obCheckInternetPermission= new CheckInternetpermission();
        Log.d("mytag", "starting permission");
        obCheckInternetPermission.check();
    }

这是连接管理器,“getSystemService”给了我这个错误:无法解析方法'getSystemService(java.lang.String)

package com.example.network;

import android.app.Activity;
import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.util.Log;
import android.view.View;


public class CheckInternetpermission{
    public void check(){
        Log.d("mytag", "In check");
        ConnectivityManager connMgr = (ConnectivityManager)


getSystemService(Context.CONNECTIVITY_SERVICE); //<---getSystemService give me error??????
            NetworkInfo networkInfo = connMgr.getActiveNetworkInfo();
            if (networkInfo != null && networkInfo.isConnected()) {
                Log.d("mytag", "Internet connection TRUE");
            } else {
                Log.d("mytag","Internet connection FALSE");    // display error
            }
    }
}

1 个答案:

答案 0 :(得分:5)

getSystemService()Context上的一种方法。您需要Context才能获得系统服务。例如,ActivityContext,因为Activity类继承自Context