有没有人知道是否有办法以编程方式获取Android设备上的网络通知设置?此设置允许用户在网络可用时得到通知(或不通知)。我只需要检索当前值,而不是设置它。
我已经检查过ConnectivityManager并且还浏览了像WifiInfo这样的对象,并且没有看到任何看起来太有用的东西。感谢您提供任何指导。
答案 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");
}
}
}