gpt4 book ai didi

android - WIFI变化的广播 Action

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:00:48 28 4
gpt4 key购买 nike

在我的应用程序中,每当设备连接到 WIFI 网络或断开连接时,我都必须收到通知。为此,我必须使用 BroadcastReceiver 但在阅读了不同的文章和此处的问题之后,我有点困惑我应该为此使用哪个 Broadcast 操作。在我看来,我有三个选择:

为了减少资源,我真的只想在设备 CONNECTED 到 WIFI 网络(并且它已收到 IP 地址)或设备 DISCONNECTED 从一个。我不关心其他状态,例如 CONNECTING 等。

那么您认为我应该为此使用的最佳广播操作是什么?我是否必须在 onReceive 中手动过滤事件(因为我收到的事件多于 CONNECTEDDISCONNECTED)?

编辑:正如我在下面的评论中指出的那样,我认为 SUPPLICANT_CONNECTION_CHANGE_ACTION 对我来说是最好的选择,但它从未被我的应用程序触发或接收。 Others这个广播有同样的问题,但从未提出真正的解决方案(实际上使用了其他广播)。有什么想法吗?

最佳答案

你可以去找WifiManager.NETWORK_STATE_CHANGED_ACTION works.

WifiManager.NETWORK_STATE_CHANGED_ACTION Action 注册接收器,在 Manifest 或 Fragment 或 Activity 中,哪个适合你。

覆盖接收器:

@Override
public void onReceive(Context context, Intent intent) {

final String action = intent.getAction();

if(action.equals(WifiManager.NETWORK_STATE_CHANGED_ACTION)){
NetworkInfo info = intent.getParcelableExtra(WifiManager.EXTRA_NETWORK_INFO);
boolean connected = info.isConnected();
if (connected)
//call your method
}
}

关于android - WIFI变化的广播 Action ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46011943/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com