Wi-Fiの状態を切り替えるWi-Fiウィジェットがあります。ただし、ユーザーがウィジェットを使用せずに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
}
ウィジェットを更新するには
レシーバーに android.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);
よろしく、
レオナルド・オリベイラ