簡體   English   中英

使用 Java 在 Android 中檢測設備是否連接到 Internet 的好方法

[英]Good way for detecting if a device is connected to the internet in Android using Java

我正在嘗試制作一個 function 來檢測用戶是否已連接到互聯網,以便在此 function 返回 true 時請求新的插頁式廣告。 這是我制作的 function,但現在已棄用,因為它使用了棄用的 API。 實際上這個 function 只檢測用戶是否連接到網絡。 所以我不知道哪個選項更適合我想要制作的新 function,因為這個選項已被棄用,以檢測用戶是否像我所做的那樣連接到網絡或檢查用戶是否實際連接到互聯網如果使用此 function 將請求插頁式廣告,如果它返回 true,如我所說。

這是我制作的 function,但現在需要更改,因為它使用的是已棄用的 API...

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



public class ConnectionDetector {

    private Context _context;

    public ConnectionDetector(Context context) {
        this._context = context;
    }

    public boolean isConnectingToInternet() {
        ConnectivityManager connectivity = (ConnectivityManager) _context.getSystemService(Context.CONNECTIVITY_SERVICE);
        if (connectivity != null) {
            //noinspection deprecation
            NetworkInfo[] info = connectivity.getAllNetworkInfo();
            for (NetworkInfo anInfo : info)
                if (anInfo.getState() == NetworkInfo.State.CONNECTED) {
                    return true;
                }

        }
        return false;
    }

}
    private void CallNewInertial() {
        ConnectionDetector cd = new ConnectionDetector(Activityone.this);
        if (cd.isConnectingToInternet()) {
            requestNewInterstitial();
        }
    }

我搜索了信息,但只找到了當前的遮陽篷,但它們是 Kotlin,而不是 Java...

例如,您可以 ping 始終可訪問的外部地址,例如 IP 8.8.8.8 (Google)。 在這里看看你是怎么做的。

但通常你可以跳過它,因為插頁式廣告在后台加載,如果沒有連接不會拋出異常,至少對於 Admob 和大多數主要廣告網絡。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM