gpt4 book ai didi

android - 阻止 Android 请求使用蜂窝数据

转载 作者:行者123 更新时间:2023-11-30 00:23:36 26 4
gpt4 key购买 nike

我们正在通过 Android 应用程序进行大量上传。我们想强制这些用户使用 WiFi 而从不使用蜂窝网络,这样我们就不会浪费用户的蜂窝数据计划。

目前我们正在使用 ConnectivityManager 检查连接状态,并确保它们已连接到 WiFi。这种方法似乎已在 Android 7 上停止工作,因为有时即使连接了 WiFi,操作系统也会决定通过蜂窝网络发送请求。

在 iOS 上,我们可以使用 allowsCellularAccess=false 来明确阻止这种情况。

在 Android 上有没有办法要求请求使用 WiFi?理想情况下是在请求级别,而不是整个应用程序。我们不想将整个应用程序限制为 WiFi,只是大量上传。

我们正在使用 OkHttpRequest,但如果需要,我们愿意使用其他库。

最佳答案

来自文档 developer.android.com

ConnectivityManager cm = (ConnectivityManager) this.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetwork = cm.getActiveNetworkInfo();
if (activeNetwork != null) { // connected to the internet
if (activeNetwork.getType() == ConnectivityManager.TYPE_WIFI) {
// connected to wifi
// make large uploads here
Log.d(LOG_TAG, " connected to WIFI");
} else if (activeNetwork.getType() == ConnectivityManager.TYPE_MOBILE) {
// connected to the mobile provider's data plan
Log.d(LOG_TAG, " Connected to Mobile");
}
} else {
Log.d(LOG_TAG, " No connection");
}

关于android - 阻止 Android 请求使用蜂窝数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45823824/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com