如何在拨打电话前检查网络可用性?

问题描述:

我想拨打电话,但在此操作之前,我必须确保移动网络可用并且手机未处于飞行模式。如何在拨打电话前检查网络可用性?

我该怎么做?

+0

你的意思是老式的移动网络?或者这是通过互联网的呼叫? – 2012-07-21 12:26:59

您需要使用ACCESS_NETWORK_STATE许可,您的清单,然后使用此:

​​

对于所有类型的连接,你可以尝试使用这个(java script):

function checkConnection() { 
    var networkState = navigator.network.connection.type; 

    var states = {}; 
    states[Connection.UNKNOWN] = 'Unknown connection'; 
    states[Connection.ETHERNET] = 'Ethernet connection'; 
    states[Connection.WIFI]  = 'WiFi connection'; 
    states[Connection.CELL_2G] = 'Cell 2G connection'; 
    states[Connection.CELL_3G] = 'Cell 3G connection'; 
    states[Connection.CELL_4G] = 'Cell 4G connection'; 
    states[Connection.NONE]  = 'No network connection'; 

    alert('Connection type: ' + states[networkState]); 
} 

checkConnection();  

连接对象允许访问设备的蜂窝和WiFi连接信息。

参考文献:
vogelle-de
how to programmatically check availability of internet connection using jquery

+0

**谢谢,但您的代码返回错误的2G网络。** – Mehdico 2012-07-21 12:45:01

+0

@Mehdico请参阅我的编辑,我希望这可以帮助你。 – hasanghaforian 2012-07-22 04:55:46