如何每 N 秒 android 检查一次 Internet 连接

How to check Internet connection in android every N seconds

我想每 N 秒检查一次 Internet 连接状态 我该怎么做

我想在 android 设备

中收到短信时发送邮件

每 N 秒检查一次互联网连接:

使用 isNetworkAvailable() 方法创建一个 NetworkUtils,根据连接状态 returns true 或 false:

import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;

public class NetworkUtils {
    public static boolean isNetworkAvailable(Context context) {
        ConnectivityManager connectivityManager
                = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo activeNetworkInfo = connectivityManager.getActiveNetworkInfo();
        return activeNetworkInfo != null && activeNetworkInfo.isConnected();
    }
}

创建一个 CheckConnection() class 每 N 秒检查一次连接:

class CheckConnection extends TimerTask {
    private Context context;
    public CheckConnection(Context context){
        this.context = context;
    }
    public void run() {
        if(NetworkUtils.isNetworkAvailable(context)){
            //CONNECTED
        }else {
            //DISCONNECTED
        } 
    }
}

您可以使用 activity 中的 CheckConnection class,例如:

Timer timer = new Timer();
final int MILLISECONDS = 5000; //5 seconds
timer.schedule(new CheckConnection(this), 0, MILLISECONDS);

希望对您有所帮助!