О нулевой безопасности в Flutter 3.7.12 Платформа Linux ⇐ Linux
-
Anonymous
О нулевой безопасности в Flutter 3.7.12 Платформа Linux
https://github.com/flutter/flutter/issues/136791
Шаги по воспроизведению
1、Установите и настройте Flutter 3.7.12 в Linux. 2、запустите flutte build linux --release --no-sound-null-safety или flutter run -d linux --no-sound-null-safet
Фактические результаты
1、Мой коммерческий проект был создан во Flutter 1.2, поэтому во многих местах он не поддерживает пустые исключения, и в настоящее время я запускаю свой проект в Windows, используя Flutter 3.7.12 с аннотациями @dart=2.9. Это может удовлетворить обычные использование всех функций 2. Когда я установил и настроил Flutter 3.7.12 в системе Linux X86, проект можно запустить, но многие функции недоступны из-за исключений проверки нуля. 3. Помимо изменения общего кода проекта, я хотел бы знать, есть ли способ заставить его работать на платформе Linux, потому что из-за некоторых проблем нет времени адаптировать код проекта, и я специально проверил официальный сайт. . 3.7.12 — последняя версия, поддерживающая проверку без пробелов.
Журналы какая-то ошибка в журнале
: ошибка getCustomXmlIcons или XML-файл не существует. [ОШИБКА: flutter/runtime/dart_vm_initializer.cc(41)] Необработанное исключение: неудачное утверждение: логическое выражение не должно быть нулевым. #0 новый AuthDirectManager.. (пакет:nova_login/manager/direct_auth_manager.dart:50) флаттер: ошибка getCustomXmlIcons или XML-файл не существует [ОШИБКА: flutter/runtime/dart_vm_initializer.cc(41)] Необработанное исключение: неудачное утверждение: логическое выражение не должно быть нулевым. #0 новый AuthDirectManager.. (пакет:nova_login/manager/direct_auth_manager.dart:50) [ОШИБКА: flutter/runtime/dart_vm_initializer.cc(41)] Необработанное исключение: неудачное утверждение: логическое выражение не должно быть нулевым. #0 новый AuthDirectManager.. (пакет:nova_login/manager/direct_auth_manager.dart:50) .. флаттер: StandardAreaManager.getAreaList.usedLocalDeviceKeys длина = 0, длина localDeviceMap = 0 [ОШИБКА: flutter/runtime/dart_vm_initializer.cc(41)] Необработанное исключение: NoSuchMethodError: метод «+» был вызван при нулевом значении. Получатель: ноль Попробовал позвонить: +() Вывод Flutter Doctor Вывод врача флаттер доктор -v [✓] Flutter (стабильная версия канала, 3.7.12, на Kylin V10 SP1 5.4.18-53-generic, локаль zh_CN.UTF-8) • Версия Flutter 3.7.12 стабильна на канале /home/it0/flutter/flutter_3.7.12. • Восходящий репозиторий https://github.com/flutter/flutter.git. • Версия платформы 4d9e56e694 (6 个月前), 17 апреля 2023 г., 21:47:46 -0400. • Версия двигателя 1a65d409c7 • Дартс версия 2.19.6 • Инструменты разработчика версии 2.20.1. [✗] Набор инструментов Android — разработка для устройств Android ✗ Невозможно найти Android SDK. Установите Android Studio по адресу: https://developer.android.com/studio/index.html. При первом запуске он поможет вам установить компоненты Android SDK. (или посетите https://flutter.dev/docs/get-started/in ... roid-setup для получения подробных инструкций). Если Android SDK был установлен в произвольное расположение, используйте `flutter config --android-sdk` для обновления в это место. [✗] Chrome — разработка для Интернета (невозможно найти исполняемый файл Chrome в google-chrome) ! Не могу найти Хром. Попробуйте установить CHROME_EXECUTABLE в исполняемый файл Chrome. [✓] Набор инструментов Linux — разработка для настольных компьютеров Linux • версия clang 10.0.0-4kylin1 • cmake версия 3.16.3 • ниндзя версия 1.10.0 • pkg-config версии 0.29.1 [!] Android Studio (не установлена) • Android Studio не найдена; скачать с https://developer.android.com/studio/index.html (или посетите https://flutter.dev/docs/get-started/in ... roid-setup для получения подробных инструкций). [✓] Подключенное устройство (доступно 1) • Linux (настольный компьютер) • Linux • linux-x64 • Kylin V10 SP1 5.4.18-53-generic Пытаюсь изменить Flutter 2.10.0, но эта версия не поддерживает мое устройство с Linux; Попробуйте сменить Flutter 3.0.0, та же проблема
https://github.com/flutter/flutter/issues/136791
Шаги по воспроизведению
1、Установите и настройте Flutter 3.7.12 в Linux. 2、запустите flutte build linux --release --no-sound-null-safety или flutter run -d linux --no-sound-null-safet
Фактические результаты
1、Мой коммерческий проект был создан во Flutter 1.2, поэтому во многих местах он не поддерживает пустые исключения, и в настоящее время я запускаю свой проект в Windows, используя Flutter 3.7.12 с аннотациями @dart=2.9. Это может удовлетворить обычные использование всех функций 2. Когда я установил и настроил Flutter 3.7.12 в системе Linux X86, проект можно запустить, но многие функции недоступны из-за исключений проверки нуля. 3. Помимо изменения общего кода проекта, я хотел бы знать, есть ли способ заставить его работать на платформе Linux, потому что из-за некоторых проблем нет времени адаптировать код проекта, и я специально проверил официальный сайт. . 3.7.12 — последняя версия, поддерживающая проверку без пробелов.
Журналы какая-то ошибка в журнале
: ошибка getCustomXmlIcons или XML-файл не существует. [ОШИБКА: flutter/runtime/dart_vm_initializer.cc(41)] Необработанное исключение: неудачное утверждение: логическое выражение не должно быть нулевым. #0 новый AuthDirectManager.. (пакет:nova_login/manager/direct_auth_manager.dart:50) флаттер: ошибка getCustomXmlIcons или XML-файл не существует [ОШИБКА: flutter/runtime/dart_vm_initializer.cc(41)] Необработанное исключение: неудачное утверждение: логическое выражение не должно быть нулевым. #0 новый AuthDirectManager.. (пакет:nova_login/manager/direct_auth_manager.dart:50) [ОШИБКА: flutter/runtime/dart_vm_initializer.cc(41)] Необработанное исключение: неудачное утверждение: логическое выражение не должно быть нулевым. #0 новый AuthDirectManager.. (пакет:nova_login/manager/direct_auth_manager.dart:50) .. флаттер: StandardAreaManager.getAreaList.usedLocalDeviceKeys длина = 0, длина localDeviceMap = 0 [ОШИБКА: flutter/runtime/dart_vm_initializer.cc(41)] Необработанное исключение: NoSuchMethodError: метод «+» был вызван при нулевом значении. Получатель: ноль Попробовал позвонить: +() Вывод Flutter Doctor Вывод врача флаттер доктор -v [✓] Flutter (стабильная версия канала, 3.7.12, на Kylin V10 SP1 5.4.18-53-generic, локаль zh_CN.UTF-8) • Версия Flutter 3.7.12 стабильна на канале /home/it0/flutter/flutter_3.7.12. • Восходящий репозиторий https://github.com/flutter/flutter.git. • Версия платформы 4d9e56e694 (6 个月前), 17 апреля 2023 г., 21:47:46 -0400. • Версия двигателя 1a65d409c7 • Дартс версия 2.19.6 • Инструменты разработчика версии 2.20.1. [✗] Набор инструментов Android — разработка для устройств Android ✗ Невозможно найти Android SDK. Установите Android Studio по адресу: https://developer.android.com/studio/index.html. При первом запуске он поможет вам установить компоненты Android SDK. (или посетите https://flutter.dev/docs/get-started/in ... roid-setup для получения подробных инструкций). Если Android SDK был установлен в произвольное расположение, используйте `flutter config --android-sdk` для обновления в это место. [✗] Chrome — разработка для Интернета (невозможно найти исполняемый файл Chrome в google-chrome) ! Не могу найти Хром. Попробуйте установить CHROME_EXECUTABLE в исполняемый файл Chrome. [✓] Набор инструментов Linux — разработка для настольных компьютеров Linux • версия clang 10.0.0-4kylin1 • cmake версия 3.16.3 • ниндзя версия 1.10.0 • pkg-config версии 0.29.1 [!] Android Studio (не установлена) • Android Studio не найдена; скачать с https://developer.android.com/studio/index.html (или посетите https://flutter.dev/docs/get-started/in ... roid-setup для получения подробных инструкций). [✓] Подключенное устройство (доступно 1) • Linux (настольный компьютер) • Linux • linux-x64 • Kylin V10 SP1 5.4.18-53-generic Пытаюсь изменить Flutter 2.10.0, но эта версия не поддерживает мое устройство с Linux; Попробуйте сменить Flutter 3.0.0, та же проблема
Мобильная версия