有谁知道是否有办法以编程方式获取 Android 设备上的网络通知设置?此设置允许在网络可用时通知(或不通知)用户。我只需要检索当前值,而不是设置它。
我检查了 ConnectivityManager 并仔细阅读了 WifiInfo 之类的对象,但没有看到任何看起来太有用的东西。感谢您的任何指导。
有谁知道是否有办法以编程方式获取 Android 设备上的网络通知设置?此设置允许在网络可用时通知(或不通知)用户。我只需要检索当前值,而不是设置它。
我检查了 ConnectivityManager 并仔细阅读了 WifiInfo 之类的对象,但没有看到任何看起来太有用的东西。感谢您的任何指导。
您应该通过将其添加到清单中来制作一个广播接收器,该接收器将在新网络可用时触发。
<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");
}
}
}