在Android中获取网络通知设置

时间:2012-01-15 02:54:38

标签: android networking setting

有没有人知道是否有办法以编程方式获取Android设备上的网络通知设置?此设置允许用户在网络可用时得到通知(或不通知)。我只需要检索当前值,而不是设置它。

我已经检查过ConnectivityManager并且还浏览了像WifiInfo这样的对象,并且没有看到任何看起来太有用的东西。感谢您提供任何指导。

1 个答案:

答案 0 :(得分:0)

通过将新网络添加到您的清单中,您应该制作一个可在新网络可用时触发的广播接收器。

<receiver
    android:name=".receivers.NetworkChangeReceiver"
    android:label="NetworkChangeReceiver">
    <intent-filter>
        <action
            android:name="android.net.conn.CONNECTIVITY_CHANGE" />
        <action
            android:name="android.net.wifi.WIFI_STATE_CHANGED" />
    </intent-filter>
</receiver>

然后在您的接收器中,您可以检查是否存在连接。

public class NetworkChangeReceiver extends BroadcastReceiver{

   @Override
   public void onReceive(Context context, Intent intent) {
   ConnectivityManager cm=(ConnectivityManager)  context.getSystemService(Context.CONNECTIVITY_SERVICE);
    if(cm.getActiveNetworkInfo()!=null&&cm.getActiveNetworkInfo().isConnected()){
       //Send a broadcast to your service or activity that you have network or notifiy you have a network 
       //...
   }else{
       LOG.i("Network UNAVAILABLE");
   }
 }

}