1

Wifip2p网络信息中isRoaming是什么意思?[ http://developer.android.com/reference/android/net/NetworkInfo.html#isRoaming()] 它告诉使用该网络上的数据可能会产生额外费用?它指的是哪些数据以及使用将如何导致额外费用?

4

2 回答 2

1

好吧,如果您在本国/州之外并且打开手机,它将自动建立与漫游合作伙伴网络的 GSM 连接 ->TelephonyManager.isNetworkRoaming()将返回 true。如果禁用数据漫游或启用“仅使用 2g”NetworkInfo.isRoaming()将返回false,因为没有建立数据连接。如果您打开数据服务NetworkInfo.isRoaming()也将返回 true,因为现在(GSM 和数据连接)都已建立并处于漫游模式。

因此,设置数据漫游开/关将使NetworkInfo.isRoaming() return true/false.

UPD:当用户想知道用户在2G/3G网络时是否启用了漫游数据时使用。

ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo ni = cm.getActiveNetworkInfo();
//[edit: check for null]
if(ni != null) {
  //...Here check if this is connected and available...
  if (ni.isRoaming())
  {
      // user has enabled data even while he is on Roaming!!
  }
}
于 2015-07-02T12:56:44.533 回答
0

由于他专门询问了 Wifi P2P 的正确答案,即这将是一个未使用的字段,因为漫游仅适用于蜂窝网络,不适用于 Wifi P2P 网络信息。

您应该使用的有关 wifi P2P 的唯一 networkinfo 字段是:isConnected(之后您通常会从 wifip2pmanager 请求连接信息)。

于 2015-07-06T11:25:49.437 回答