EDIT: Je sais que SCAN_RESULTS_AVAILABLE_ACTION retourne une liste de taille « 0 » si les services de localisation sont question off.The est comment le faire sans les services de localisation.Obtenir la liste des réseaux WiFi disponibles sans services de localisation dans Android
PRÉCÉDENT: J'ai besoin d'une liste de tous les réseaux WiFi disponibles au téléphone, et d'utiliser cette liste pour remplir un ListView
dans mon application. Je me connecterai plus tard au réseau souhaité depuis mon application.
I ont obtenu ci-dessus en utilisant,
wifiManager.startScan();
et I ont enregistré une BroadcastReciever pour recevoir un intimation lorsqu'une analyse est terminée comme ci-dessous,
registerReceiver(wifiReceiver, new IntentFilter(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION));
code de récepteur est le suivant,
class WifiReceiver extends BroadcastReceiver {
// This method call when number of wifiManager connections changed
public void onReceive(Context c, Intent intent) {
wifiResults.clear();
wifiList = wifiManager.getScanResults();
for(int i = 0; i < wifiList.size(); i++){
if(!wifiList.get(i).SSID.equals(""))
wifiResults.add(wifiList.get(i).SSID+" signal:"+wifiList.get(i).level);
}
adapter.notifyDataSetChanged();
wifiRefreshLayout.setRefreshing(false);
}
}
le problème est que je dois activer les services de localisation chaque ti moi je veux l'information ci-dessus.Je ne vois pas vraiment le point ici car je n'ai pas besoin des services de localisation ici comme d'autres applications comme "SHAREit" faire la même chose sans avoir besoin de services de localisation.Is-il une meilleure approche pour y parvenir?
SHAREit demande les services de localisation – nitzanms
Possible duplicate de [SCAN \ _RESULTS \ _AVAILABLE \ _ACTION retourner la liste vide dans Android 6.0] (https://stackoverflow.com/questions/32151603/scan-results-available-action-return- empty-list-in-android-6-0) – nitzanms
@nitzanms aucun shareit ne nécessite pas de services de localisation –