首页 > 解决方案 > 当活动/片段处于前台时如何连续检查互联网连接并解析数据

问题描述

我不知道这是否是一个基本问题。

假设有一个活动/片段在前台。调用 onCreate() / onViewCreate() 时没有互联网连接。

那么,当Activity / Fragment处于前台状态时,如何在互联网可用时继续检查互联网连接背景并解析数据?

如果有任何不正确之处,请致歉。提前致谢

标签: javaandroidandroid-studioandroid-background

解决方案


聆听 Android 的连接变化networkCallBack

https://developer.android.com/reference/android/net/ConnectivityManager#registerNetworkCallback(android.net.NetworkRequest,%20android.net.ConnectivityManager.NetworkCallback)

ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);

connectivityManager.registerNetworkCallback(
            new NetworkRequest.Builder().build(), 
            new ConnectivityManager.NetworkCallback() {

        @Override
        public void onAvailable(Network network) {
            super.onAvailable(network);
            // ...
        }

        @Override
        public void onLost(Network network) {
            super.onLost(network);
            // ...
        }

});

推荐阅读