Есть ли разрешение INTE RNET в iOS? - PullRequest
0 голосов
/ 25 апреля 2020

У меня странная проблема с дио пакетом для флаттера на устройстве iOS. я написал приложение, которое отправляет запрос GET на URL. все отлично работает на Android, но похоже, что запрос не go на iOS. ничего не происходит без ошибок вообще ничего. У меня была такая же проблема на android, но я обнаружил, что забыл добавить разрешение INTE RNET в мой файл манифеста. Я предполагаю, что такая же ситуация возникает в iOS.

. Есть ли какое-либо разрешение INTE RNET в iOS, что мне нужно добавить info.plist?

void _checkVersionAndPreferences() async {
    SharedPreferences prefs = await SharedPreferences.getInstance();
    String prefsRes = prefs.getString('access_token') ?? '';
    String buildNumber = _packageInfo.buildNumber ?? '1';
    Dio dio = Dio();
    _cancelToken = CancelToken();
    Future.delayed(Duration(seconds: 10), () {
      if (_getRequestSuccess == false) {
        _cancelToken.cancel();
        _checkVersionAndPreferences();
        _showSnackBar(
            content: 'تلاش مجدد برای برقراری ارتباط',
            duration: Duration(seconds: 3),
            leading: Icon(Icons.refresh, color: Colors.black));
      }
    });
    Response response = await dio.get(
        'https://snapmelk.com/api/v1/panel/checkVersion/' + buildNumber,
        cancelToken: _cancelToken);
    try {
      Map respJson = jsonDecode(response.data);
      setState(() {
        _getRequestSuccess = true;
      });
      if (respJson['error']) {
        _showSnackBar(
            content:
                (respJson['errorMsg'] != null && respJson['errorMsg'] != '')
                    ? respJson['errorMsg']
                    : 'خطا در اتصال دریافت اطلاعات آخرین نسخه',
            leading: Icon(Icons.warning),
            backgroundColor: Colors.red,
            textColor: Colors.white);
      } else {
        if (respJson['NewUpdate']) {
          _checkDialogAnswer(respJson, prefsRes);
        } else {
          _checkPrefs(prefsRes);
        }
      }
    } catch (e) {
      _showSnackBar(
          content: 'خطا در اتصال با سرور. لطفا در زمانی دیگر مراجعه کنید',
          leading: Icon(Icons.warning),
          backgroundColor: Colors.red,
          textColor: Colors.white);
    }
  }

1 Ответ

0 голосов
/ 26 апреля 2020

Хорошо, с помощью моего друга я обнаружил, что это не имеет ничего общего с целыми rnet запросами. Видимо плагины Connectivty и Информация о пакете не работали на iOS и вернули NULL.

какой позор потерял мою надежду в трепет

...