와이파이 상태를 토글하는 와이파이 위젯이 있습니다. 그러나 사용자가 내 위젯을 사용하지 않고 Wi-Fi 상태를 변경하면 내 위젯에 변경 사항이 반영되지 않습니다. 전의. Wi-Fi가 켜져 있고 사용자가 설정을 통해 Wi-Fi를 껐다면 Wi-Fi가 업데이트되지 않았기 때문에 위젯에 계속 표시됩니다.Wi-Fi 상태가 변경되면 어떻게 위젯 업데이트를 호출합니까?
Wi-Fi 상태가 변경된 후 위젯을 업데이트하려면 어떻게해야합니까?
와이파이 상태를 토글하는 와이파이 위젯이 있습니다. 그러나 사용자가 내 위젯을 사용하지 않고 Wi-Fi 상태를 변경하면 내 위젯에 변경 사항이 반영되지 않습니다. 전의. Wi-Fi가 켜져 있고 사용자가 설정을 통해 Wi-Fi를 껐다면 Wi-Fi가 업데이트되지 않았기 때문에 위젯에 계속 표시됩니다.Wi-Fi 상태가 변경되면 어떻게 위젯 업데이트를 호출합니까?
Wi-Fi 상태가 변경된 후 위젯을 업데이트하려면 어떻게해야합니까?
사용하십시오 BroadcastReceiver
는
IntentFilter mFilter = new IntentFilter();
mFilter .addAction(WifiManager.SUPPLICANT_CONNECTION_CHANGE_ACTION);
registerReceiver(yourReceiver, mFilter);
및 yourReceiver
클래스 사용의 onReceive에서
if (action.equals(WifiManager.SUPPLICANT_CONNECTION_CHANGE_ACTION)) {
//Do something
}
이 위젯
당신 업데이트 할 사용하여 수신기를 등록 그러한 변화
을 알립니다 andro를 등록해야합니다. id.net.conn.CONNECTIVITY_CHANGE 및 android.net.wifi.WIFI_STATE_CHANGED 작업을 수신자에게 보냅니다.
다음 onReceive 방법, 아래의 코드를 사용하여 위젯 업데이트 :
Intent i = new Intent(context, WidgetProvider.class);
i.setAction(AppWidgetManager.ACTION_APPWIDGET_UPDATE);
i.putExtra(AppWidgetManager.EXTRA_APPWIDGET_IDS,
AppWidgetManager.getInstance(context).getAppWidgetIds(new ComponentName(context, WidgetProvider.class)));
context.sendBroadcast(i);
감사를
레오나르도 올리베이라