简介:使用 getTypeName() 方法返回检查的网络信息的人类可读字符串值。试图找到可能的返回值导致我使用 ConnectivityManager 的 getNetworkTypeName 方法。
返回的一些值可以是:“MOBILE_DUN”、“WIMAX”、“BLUETOOTH”、“ETHERNET”等...
问题:询问设备是否已连接时,我应该考虑哪些值?
问题:例如,如果我与“MOBILE_DUN”或“ETHERNET”连接,我是否仍被视为与“MOBILE”/“WIFI”连接?
简介:使用 getTypeName() 方法返回检查的网络信息的人类可读字符串值。试图找到可能的返回值导致我使用 ConnectivityManager 的 getNetworkTypeName 方法。
返回的一些值可以是:“MOBILE_DUN”、“WIMAX”、“BLUETOOTH”、“ETHERNET”等...
问题:询问设备是否已连接时,我应该考虑哪些值?
问题:例如,如果我与“MOBILE_DUN”或“ETHERNET”连接,我是否仍被视为与“MOBILE”/“WIFI”连接?
试试这个代码;
ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
if(cm.getNetworkInfo(ConnectivityManager.TYPE_WIFI)
.isConnectedOrConnecting()
|| cm.getNetworkInfo(ConnectivityManager.TYPE_MOBILE)
.isConnectedOrConnecting())
{
// do functionality
}
问题:当询问设备是否已连接时,我应该考虑哪些值?
答:可以在 ConnectivityManager.getNetworkTypeName(int type) 方法中找到这些值。
问题:例如,如果我与“MOBILE_DUN”或“ETHERNET”连接,我是否仍被视为与“MOBILE”/“WIFI”连接?
答案:答案是肯定的。您的设备似乎可以同时连接到多个此类网络。