我有一个电话状态监听器。我监听服务状态,呼叫状态和信号强度变化。这一切都很好。
但是...
如果我的应用程序在没有信号强度的条件下启动,则没有“更改”,我也不会收到通知。因此,我不能确定我是否没有信号。
有没有办法主动请求/确定天气我在STARTUP上有信号或网络服务(不是互联网)?
答案 0 :(得分:1)
ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
if (connectivityManager != null && connectivityManager.getActiveNetworkInfo() != null)
{
// Network is available
}
else
{
// No connection available.
}
<强>更新强>
您还需要获得许可:
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<强> UPDATE2 强>:
看起来连接管理器存在问题,因此它不是100%可靠: http://code.google.com/p/android/issues/detail?id=11588