Xamarin Android连接到现有Wi-Fi AP

Xamarin Android连接到现有Wi-Fi AP,android,xamarin,xamarin.forms,xamarin.android,android-wifi,Android,Xamarin,Xamarin.forms,Xamarin.android,Android Wifi,我花了一个小时在谷歌上搜索,我看到的一切都归结为一个简单的代码: var wifiManager = ApplicationContext.GetSystemService(Context.WifiService).JavaCast<WifiManager>(); WifiConfiguration conf = new WifiConfiguration() { Ssid = @"""ssid""", PreSharedKey = @"""passw""" }; var id

我花了一个小时在谷歌上搜索,我看到的一切都归结为一个简单的代码:

var wifiManager = ApplicationContext.GetSystemService(Context.WifiService).JavaCast<WifiManager>();

WifiConfiguration conf = new WifiConfiguration() { Ssid = @"""ssid""", PreSharedKey = @"""passw""" };

var id = wifiManager.AddNetwork(conf);
var enabled = wifiManager.EnableNetwork(id, true);
var wifiManager=ApplicationContext.GetSystemService(Context.WifiService.JavaCast();
WifiConfiguration conf=new-WifiConfiguration(){Ssid=@“Ssid”“,PreSharedKey=@“passw”“”};
var id=wifiManager.AddNetwork(conf);
var enabled=wifiManager.EnableNetwork(id,true);
如果我将ssid/密码设置为Android手机列表中的WiFi,则id为-1,并且不会发生任何事情

如果我将它们设置为一个虚构的值,比如abc/abc,我会得到一个真实的id

所以我不确定——如果你无法连接到现有的Wi-Fi,那么这段代码在现实生活中的用途是什么

如何连接到API级别29+的“现有”Wi-Fi? (现有-我的意思是手机已将其存储在列表中,并且当前在Wi-Fi扫描中可见)

当我从一个房间搬到另一个房间时,我真正想要的是在家里切换到另一个Wi-Fi


Xamarin.Forms 4.5 | Android 10.0
请注意,
WifiManager
API已被弃用,在针对Android Q SDK时将停止工作

警察说

向配置的网络集添加新网络的描述。[我的重点]

然而,你写了

如果我将ssid/密码设置为Android手机列表中的WiFi[…]

根据定义,它不是新网络,而是现有网络,因此
addNetwork
失败并返回
-1

尝试使用
列表并按字段
WifiConfiguration.SSID
过滤该列表。然后,您可以使用
WifiConfiguration.NetworkId
进行以下操作:
EnableNetwork

请注意,
WifiManager
API已被弃用,当目标为Android Q SDK时将停止工作

警察说

向配置的网络集添加新网络的描述。[我的重点]

然而,你写了

如果我将ssid/密码设置为Android手机列表中的WiFi[…]

根据定义,它不是新网络,而是现有网络,因此
addNetwork
失败并返回
-1

尝试使用
列表并按字段
WifiConfiguration.SSID
过滤该列表。然后,您可以使用
WifiConfiguration.NetworkId
进行以下操作:
EnableNetwork

这是否回答了您的问题?不,它做完全相同的事情
AddNetwork
@BoppityBop有什么更新吗?现在你解决了你的问题?我没有。现在放弃……这能回答你的问题吗?不,它做完全相同的事情
AddNetwork
@BoppityBop有什么更新吗?现在你解决了你的问题?我没有。现在放弃..你能回答实际问题吗-我如何在API 29+中做到(“正确”)?你能回答实际问题吗-我如何在API 29+中做到(“正确”)?