Нашел времени немного, у себя сделал так, нахожу все сети, заполняю ими ListView, при нажатии на item вызываю ConnectToWifi(ssid, bsid, password: String) а вы какой хотите велосипед такой и изобретайте
1.JWifiNetworkSpecifier = interface(JObject) оставляем!
2.
procedure ConnectToWifi(ssid, bsid, password: String);
var
ConnectivityManagerNative: JObject;
ConnectivityManager: JConnectivityManager;
NetworkRequest_Builder: JNetworkRequest_Builder;
NetworkRequest: JNetworkRequest;
WifiNetworkSpecifier: JWifiNetworkSpecifier;
WifiNetworkSpecifier_Builder: JWifiNetworkSpecifier_Builder;
WiFicallback: JConnectivityManager_NetworkCallback;
begin
WifiNetworkSpecifier := TJWifiNetworkSpecifier_Builder.Create
.setSsidPattern(TJPatternMatcher.JavaClass.init(StringToJString(ssid), TJPatternMatcher.JavaClass.PATTERN_PREFIX))
.setBssid(TJMacAddress.JavaClass.fromString(StringToJString(bsid)))
.setWpa2Passphrase(StringToJString(password))
.build();
NetworkRequest := TJNetworkRequest_Builder.Create
.addTransportType(TJNetworkCapabilities.JavaClass.TRANSPORT_WIFI)
.removeCapability(TJNetworkCapabilities.JavaClass.NET_CAPABILITY_INTERNET)
.setNetworkSpecifier( TJNetworkSpecifier.Wrap((WifiNetworkSpecifier as ILocalObject).GetObjectID))
.build();
WiFicallback := TJConnectivityManager_NetworkCallback.JavaClass.init;
ConnectivityManagerNative := TAndroidHelper.Context.getSystemService(TJContext.JavaClass.CONNECTIVITY_SERVICE);
connectivityManager := TJConnectivityManager.Wrap((ConnectivityManagerNative as ILocalObject).GetObjectID);
connectivityManager.requestNetwork(NetworkRequest, WiFicallback);
end;
3. WiFiCallBack это обратный вызов - это класс Java, поэтому вам нужно создать потомка и реализовать необходимые методы. В настоящее время это невозможно сделать в Delphi (хотя listner'ы отлично реализуются), поэтому вам нужно будет сделать это на Java. В коде Java вы можете объявить интерфейс, который может быть передан классу, как в этом примере:
https://github.com/DelphiWorlds/Kastri/blob/master/Features/Connectivity/DW.Connectivity.Android.pas
https://github.com/DelphiWorlds/Kastri/tree/master/Java/Base/Connectivity