私の目的は、Wi-Fiネットワークの変更をスキャンできるようにすることです(主に、使用可能なネットワークを確認するため)。私が受信者を登録することによってそれをしていることを正しく知っています:
registerReceiver(wifiReceiver, new IntentFilter(WifiManager.RSSI_CHANGED_ACTION));
私のはどこWifiReceiver
ですかBroadcastReceiver
。
問題は、電話がオンになっているときにのみ機能することです。スリープモードになると(電源ボタンを押すか、しばらくすると)、受信機は受信を停止します。メインクラスのonCreateでウェイクロックを取得し、onDestroyでリリースしました(これは部分的なウェイクロックです)。さらに、私はこれを試しました:
Settings.System.putInt(getContentResolver(),Settings.System.WIFI_SLEEP_POLICY, Settings.System.WIFI_SLEEP_POLICY_NEVER);
Wi-Fiがスリープ状態にならないようにします。残念ながら、それは役に立ちませんでした。
電話がスリープ状態の場合でも、ネットワークの変更をスキャンする可能性はありますか?どのネットワークが範囲内にあるかを(SSIDで)確認できるようにしたい。多分私は別のアクションを使用する必要がありますか?
あなたの助けに感謝。