1

好的,所以人们在 Stackoverflow 上到处都说,要检查网络连接是否可用,我会将权限添加READ_PHONE_STATE到清单中 - 这对我来说非常难看(尽管市场上的许多应用程序都有该权限,但这个权限有点过头了,我想想;你会得到 IMEI、用户电话号码等)。

所以我偶然发现了权限ACCESS_NETWORK_STATEACCESS_WIFI_STATE,它应该给出相同的结果。没有人使用它们是有原因的吗?

因为如果不是,我就不需要READ_PHONE_STATE许可,这有点不那么可怕(或者用户实际上并不关心?)

谢谢!

4

1 回答 1

0

我在许多应用程序中都使用了这些权限。ABroadcastReceiver可以检查网络何时更改状态,或者您可以使用以下内容检查连接状态(来源):

public boolean isNetworkAvailable() {
    ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo networkInfo = cm.getActiveNetworkInfo();
    if (networkInfo != null && networkInfo.isConnected()) {
        return true;
    }
    return false;
}
于 2011-11-29T19:17:35.347 回答