这个问题类似this question , 但略有不同。
我正在尝试使用 Connectivity Plugin 检索我当前连接的 wifi 网络的名称.
This answer在 android 中工作得很好,虽然它听起来应该适用于 iOS,但我遇到了一个异常(exception):
PlatformException(UNAVAILABLE, wifi name unavailable, null)
简单的例子。导致异常的代码(假设我已连接到 wifi,也没有使用模拟器):
Connectivity connectivity = Connectivity();
print(await (connectivity.getWifiName()));
我的直觉告诉我这可能与权限有关,但老实说我不确定。
干杯,谢谢!
编辑:
我刚刚意识到,上面的异常是由 wifi plugin 抛出的,我也在试验。
print(await (Wifi.ssid));
连接简单地返回空...
最佳答案
我会看看是否可以在插件代码中修复该问题。如果是这样,我会回到这个答案。
但是,目前,在 Xcode 上将功能添加到您的项目(或简单地将其打开 ON
)即可:(无需更改您的应用程序中的代码)
# on your project folder, run:
open -a xcode ./ios
在 Xcode 12+ 中
在 Target > Runner > Signing & Capabilities
上,使用 + Capability
按钮将 Access WiFi Information
功能添加到您的项目中。
在较旧的 Xcode 版本中
在 Runner > Capabilities
上,将 Access WiFi Information
切换到 on
。
参见:
关于ios - Flutter IOS 使用连接或 wifi 插件读取 wifi 名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55716751/