What I tried
I’m using a service that combines wifi_scan (Android) and network_info_plus (iOS).
Here’s the iOS-relevant part of the code:
Код: Выделить всё
import 'dart:io';
import 'package:network_info_plus/network_info_plus.dart';
import 'package:permission_handler/permission_handler.dart';
class WifiNetwork {
final String ssid;
final int? level;
WifiNetwork(this.ssid, {this.level});
}
class WifiService {
final info = NetworkInfo();
Future getScanResults() async {
if (Platform.isIOS) {
final ssid = await info.getWifiName();
if (ssid != null) {
print('iOS: Connected SSID is $ssid');
return [WifiNetwork(ssid)];
} else {
print('iOS: No connected WiFi SSID available');
return [];
}
}
return [];
}
}
< /code>
my info.plist содержит: < /p>
NSLocationWhenInUseUsageDescription
This app needs location access to read Wi-Fi SSID.
NSLocationAlwaysAndWhenInUseUsageDescription
This app needs location access to read Wi-Fi SSID.
< /code>
Я также включил право на информацию о Wi-Fi в XCode (возможности → Доступ к информации Wi-Fi).
Я в платной учетной записи разработчика Apple, а не личная команда. < /p>
поведение < /strong> < /p>
ondroid, wifi_scAn works. iOS, network_info_plus.getWifiname () всегда возвращает NULL (log: «нет подключенного WiFi SSID»), хотя: < /p>
Телефон подключен к Wi-Fi. Разрешение в настройках заключается в использовании приложения Я также пробовал другие пакеты Wi-Fi (Flutter_wifi_connect, wifi_iot), но они ведут то же самое-возвращение null. Мне не нужен список сетей (я знаю, что это не разрешено). Мне нужно только получить в настоящее время подключенный SSID.
Но даже это не работает - он всегда возвращается NULL. возможности приложений) Требуется для выполнения этой работы?
Как надежно принести подключенный SSID на iOS с трепетом? < /p>
Подробнее здесь: https://stackoverflow.com/questions/797 ... -permissio
Мобильная версия