假设GoogleMap
中有一个Activity
,但将其visibility
设置为gone
:它会加载数据(因此使用带宽)还是仅加载数据当它对用户可见时?
我问,因为我只想在用户使用wifi时显示地图,问题是如果设置visibility
将会effectively
保存地图数据将使用的带宽。
答案 0 :(得分:-1)
您应该能够使用ConnectivityManager来获取Wifi适配器的状态。从那里你可以check if it is connected or even available。
ConnectivityManager connManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo mWifi = connManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
if (mWifi.isConnected()) {
// show the map
}
else {
Toast.makeText(this,"Not connected to Wifi",Toast.Length_SHORT).show();
}
此外,您需要在AndroidManifest.xml中添加:android.permission.ACCESS_NETWORK_STATE
才能生效。
答案 1 :(得分:-1)
使用测试项目和Eclipse的网络统计数据对此进行测试后,我可以说:
GoogleMap
加载数据是否可见。将其放置在布局中并将布局的visibility
设置为XML中的gone
,地图仍会加载其数据。以后以编程方式将visibility
设置为visible
后,不再进行网络活动。将初始visibility
设置为invisible
时也是如此。
当用户使用移动数据时,我没有GoogleMap(以及相关的网络流量)的方法可能是仅在用户使用wifi时以编程方式添加GoogleMap
。