Разработка для устройства iOS в среде Windows с Flutter

Я новичок во Флаттере, просто интересно, если это возможно.

Я попытался создать демонстрационный код, используя intellij с данной инструкцией (https://flutter.io/setup/). Он хорошо работает на устройстве Android, но не может найти вариант для компиляции и запуска на моем устройстве iOS.

Ответ 1

Вы можете сделать свою основную разработку под Linux или Windows с помощью Android Studio или Visual Studio Code. Затем используйте git для перемещения кода в macOS, чтобы протестировать его с Xcode на симуляторе/устройстве iOS и развернуть в App Store.

Вы можете сделать всю разработку под macOS, но вы не можете делать всю разработку под Linux или Windows. Я не слишком доволен Apple, которая делает машины с завышенными ценами, а затем заставляет нас покупать их. Поскольку я не могу позволить себе быстрый компьютер Apple, я планирую сделать большую часть своей разработки для Linux, а затем просто провести тестирование и развертывание на моем мучительно медленном Mac Mini.

Обновление

Кажется, сейчас есть больше возможностей. Прочитайте следующие статьи:

Лично я закончил тем, что купил MacBook Pro за слишком много денег. Я должен признать, что это удобно, но я сделал очень мало до этого момента, который действительно требовал этого. Я занимаюсь изучением и разработкой в Android Studio и обычно использую эмулятор Android. Время от времени я запускаю симулятор iOS, но мне это не нужно.

Я советую продолжать использовать вашу текущую систему (Windows или Linux) до тех пор, пока вы учитесь и даже во время разработки ваших первых приложений Flutter. В конце концов вы можете по достоинству оценить удобство симулятора iOS и Xcode на одной машине, но, конечно, спешить не придется.

Ответ 2

Вы можете сделать это с Mac (или Hackintosh, или VM), но поскольку у нас нет доступа к машине MacOS, мы можем использовать ее удаленно через Codemagic или Travis CI - полностью бесплатно! (пока ваш проект находится в GitHub, Bitbucket или GitLab-репозитории).

Сначала создайте учетную запись или войдите в codemagic.io.

Затем нажмите значок настроек (шестеренка) рядом с вашим приложением. Прокрутите вниз и нажмите "Построить". Убедитесь, что Mode установлен на Debug, и выберите iOS в разделе Build для платформ.

После этого соберите приложение (Запустите вашу первую сборку).

Codemagic вышлет вам файл .app по электронной почте. Переименуйте его так, чтобы он заканчивался на .zip. Распакуйте его, и вы получите папку с именем Runner.app. Создайте папку с именем Payload и поместите в нее Runner.app. Наконец, сожмите папку с именем Payload - это будет ваш файл IPA (вы можете переименовать его в .ipa).

Альтернатива: создание приложения с помощью Travis CI. Вам необходимо создать учетную запись на Travis CI и разрешить ей доступ к вашей учетной записи GitHub.

Затем создайте .travis.yml в корне вашего проекта со следующим содержимым:

 os: osx 
    language: generic 
    before_script: 
     - brew update 
     - brew install --HEAD usbmuxd 
     - brew unlink usbmuxd 
     - brew link usbmuxd 
     - brew install --HEAD libimobiledevice 
     - brew install ideviceinstaller 
     - brew install ios-deploy 
     - git clone https://github.com/flutter/flutter.git -b beta --depth 1 
    script: 
     - flutter/bin/flutter build ios --debug --no-codesign
    cache: 
      directories: 
      - $HOME/.pub-cache
    before_deploy: 
      - pushd build/ios/iphoneos 
      - mkdir Payload 
      - cd Payload 
      - ln -s ../Runner.app 
      - cd .. 
      - zip -r app.ipa Payload 
      - popd

Подробнее

Ответ 3

Apple сделала компиляцию iOS-приложений исключительно доступной для macOS.

Вы можете прочитать этот ответ и тему, чтобы найти обходные пути для его работы в Windows.

По сути, у Flutter нет другого пути, но Xamarin и NativeScript поддерживают его.

Ответ 4

Вы можете прочитать эту статью

он использует некоторые инструменты и codemagic для создания приложения Flutter для Ios.

  1. поместите свое приложение на GitHub (общедоступное) и предоставьте доступ к codemagic
  2. тогда вы должны построить свое приложение, используя магию кода для IOS.
  3. тогда вы должны использовать Cydia Impactor для подписания файла, который вам отправил CodeMagic
  4. подготовьте свой Windows-компьютер, установив libimobiledevice, ideviceinstaller, который.
  5. Измените код Flutter, чтобы не искать Xcode
  6. Запуск и отладка

Я использовал этот метод, он отлично работает, вы можете выполнить горячую перезагрузку и отладку приложения. Недостатком является то, что вы должны ввести пароль Apple ID в Cydia Impactor, который обязательно должен использовать второй идентификатор Apple, а после истечения срока действия профиля обеспечения Apple вы должны подписать свой код с Cydia Impactor снова. но это намного дешевле, чем на Mac или в аренду.

Ответ 5

Я предлагаю вам использовать виртуальную машину, чтобы сделать свое дело... У меня на Windows 10 был установлен Mac OS Mojave, и у меня все работало гладко!

Изображение Мохаве можно получить из https://getintopc.com/softwares/operating-systems/mac-os-mojave-10-14-1-vmware-image-free-download/

Я нашел это полезным, так как у меня были некоторые вещи, которые я хотел из мира Mac, в то время как у меня была просторная широта.