Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/229.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Android设备上检查电话网络_Android_Networking_Telephonymanager - Fatal编程技术网

如何在Android设备上检查电话网络

如何在Android设备上检查电话网络,android,networking,telephonymanager,Android,Networking,Telephonymanager,我知道如何检查我是否可以访问互联网,但是否可以检查电话是否可以访问电话网络?例如,可能有人可以通过Wifi接入互联网,但无法通过电话网络发送短信或拨打电话 就我而言,在使用真正的设备(三星Galaxy S)时,我可以打开3G网络(然后手机会检测到我没有连接到互联网),但我仍然可以打电话和发送短信。我想我一定是在使用其他网络 如何测试电话网络是否已连接?我需要电话管理员吗 谢谢你抽出时间 Mel您确定不只是使用这个: 上面的答案对我的一个应用程序用户不起作用-他已连接到网络,但他的网络类型未知。

我知道如何检查我是否可以访问互联网,但是否可以检查电话是否可以访问电话网络?例如,可能有人可以通过Wifi接入互联网,但无法通过电话网络发送短信或拨打电话

就我而言,在使用真正的设备(三星Galaxy S)时,我可以打开3G网络(然后手机会检测到我没有连接到互联网),但我仍然可以打电话和发送短信。我想我一定是在使用其他网络

如何测试电话网络是否已连接?我需要电话管理员吗

谢谢你抽出时间


Mel

您确定不只是使用这个:


上面的答案对我的一个应用程序用户不起作用-他已连接到网络,但他的网络类型未知。截图:

而是检查NetworkOperator字段。(从这里的第一个答案)


尝试添加代码,但在三星设备上,getNetworkOperator方法返回了一个整数,尽管该设备没有任何蜂窝连接。
boolean hasNetwork = android.telephony.TelephonyManager.getNetworkType() != android.telephony.TelephonyManager.NETWORK_TYPE_UNKNOWN; 
// True if the phone is connected to some type of network i.e. has signal
public static boolean isMobileAvailable(Context acontext) {       
    TelephonyManager tel = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);       
    return (tel.getNetworkOperator() != null && !tel.getNetworkOperator().equals(""));      
}