Delphi Can
Wifi ağlarının isimleri ve wifi menüsünü açma - Baskı Önizleme

+- Delphi Can (https://www.delphican.com)
+-- Forum: Delphi (https://www.delphican.com/forumdisplay.php?fid=3)
+--- Forum: Mobil Platform - FireMonkey (FMX) (https://www.delphican.com/forumdisplay.php?fid=7)
+--- Konu Başlığı: Wifi ağlarının isimleri ve wifi menüsünü açma (/showthread.php?tid=6134)



Wifi ağlarının isimleri ve wifi menüsünü açma - 41linea41 - 26-06-2021

Merhaba

Telefonun etrafındaki wifi ağlarını tarayarak listesini çıkarmasını istiyorum.Bu örnekde sadece bağlı olduğu wifi ağının bilgilerini veriyor. Örnek içerisinde Wifi ağlarını tarama kodu olsa da çalışmıyor. Hata da vermiyor. 

Örnek Xe6 için yapılmış 10.3 de wifi scan yapamadı. for içine hiç girmiyor. Güncel bir örnek arıyorum . amacım Wifi ağlarını tarayıp uygulamanın istediği ağa bağlı değilse Wifi seçim ekranını açmak.

İyi Çalışmalar.

procedure TForm1.SpeedButton2Click(Sender: TObject);
var
 WifiManagerObj: JObject;
 WifiManager: JWifiManager;
 ScanResult: JScanResult;
 i: Integer;
 ListBoxItem: TListBoxItem;
begin
 ListBox1.Clear;
 WifiManagerObj := SharedActivityContext.getSystemService(TJContext.JavaClass.WIFI_SERVICE);

 WifiManager := TJWifiManager.Wrap((WifiManagerObj as ILocalObject).GetObjectID);

 ListBox1.BeginUpdate;


 for i := 0 to WifiManager.getScanResults.size - 1 do
 begin
   ScanResult := TJScanResult.Wrap((WifiManager.getScanResults.get(i) as ILocalObject).GetObjectID);

   ListBoxItem := TListBoxItem.Create(ListBox1);

   ListBoxItem.ItemData.Text := 'SSID: ' + JStringToString(ScanResult.SSID);
   ListBoxItem.ItemData.Detail := 'frequency: ' + ScanResult.frequency.ToString +
   'MHz' + '  level: ' + ScanResult.level.ToString + 'dBm';

   ListBox1.AddObject(ListBoxItem);
 end;

 ListBox1.EndUpdate;
end;



[url=https://www.fmxexpress.com/access-wifi-device-info-like-ssid-and-ip-address-in-delphi-xe6-firemonkey-on-android/][/url]


Wifi ağlarının isimleri ve wifi menüsünü açma - mrmarman - 26-06-2021

Umarım "ACCESS_WIFI_STATE" iznini project permissions'tan işaretlemiş ve proje kurulduktan sonra runtime veya uygulama izinlerinden "Konum" izni verilmiştir. Bunlar eksikse çalışmaz


Cvp: Wifi ağlarının isimleri ve wifi menüsünü açma - 41linea41 - 26-06-2021

(26-06-2021, Saat: 22:13)mrmarman Adlı Kullanıcıdan Alıntı: Umarım "ACCESS_WIFI_STATE" iznini project permissions'tan işaretlemiş ve proje kurulduktan sonra runtime veya uygulama izinlerinden "Konum" izni verilmiştir. Bunlar eksikse çalışmaz

Cevabınız için teşekkürler.

Her iki izinde verilmiş durumda Bu kodları eski sürüm android de deneğimde sorunsuz çalıştığını gördüm.

Bugün konu üzerinde satckoverflowda mesajarı okudum. Java konularında kodun çalışması için GPS açık olması gerekiğini yazmışlar.


GPS i elle açtığımda kodun çalıştığını gördüm. Diğer tüm izinler olmasına rağmen GPS açmadan kod çalışmıyor.
Scan Wifi öncesi GPS açıldığında kod düzgün çalıştı. Wİfi Scan için GPS açık olması gerekliliği ilginç bir durum.

İyi çalışmalar.


Cvp: Wifi ağlarının isimleri ve wifi menüsünü açma - RAD Coder - 27-06-2021

(26-06-2021, Saat: 22:13)mrmarman Adlı Kullanıcıdan Alıntı: Umarım "ACCESS_WIFI_STATE" iznini project permissions'tan işaretlemiş ve proje kurulduktan sonra runtime veya uygulama izinlerinden "Konum" izni verilmiştir. Bunlar eksikse çalışmaz

Satckoverflow'da aramanıza gerek yoktu.
Sanırım @mrmarman üstadın önerisindeki "Konum izni" önerisini görmediniz.
Günümüzde yaklaşık ve hasas konum için internet + GPS birlikte kullanılıyor.