使用Flutter

时间:2017-10-30 01:11:44

标签: ios flutter cross-platform

我是Flutter的新手,只是想知道是否可能。

我尝试使用intellij和给定的指令(https://flutter.io/setup/)构建演示代码。它在Android设备上运行良好,但找不到在我的iOS设备上编译和运行的选项。

6 个答案:

答案 0 :(得分:15)

您可以使用Android Studio或Visual Studio Code在Linux或Windows上进行主要开发。然后使用git将代码移至macOS,以在iOS模拟器/设备上使用Xcode对其进行测试,并将其部署到App Store。

您可以在macOS上进行所有开发,但不能在Linux或Windows上进行所有开发。我对苹果生产过高价格的机器然后强迫我们购买它们感到不满意。由于我买不起一台快速的Apple计算机,因此我计划在Linux上进行大部分开发,然后在速度极慢的Mac Mini上进行测试和部署。

更新

似乎现在有更多可能性。阅读以下文章:

个人而言,我最终以太多的钱购买了MacBook Pro。我必须承认它很方便,但是到目前为止,我确实做了很少的工作。我在Android Studio中进行所有的学习和开发,通常使用Android模拟器。我时不时地启动iOS模拟器,但并不需要这样做。

我的建议是,在学习期间甚至在开发第一个Flutter应用程序时,都应继续使用当前系统(Windows或Linux)。最终,您可能会喜欢将iOS Simulator和Xcode安装在同一台计算机上的便利,但是肯定不会着急。

答案 1 :(得分:2)

Apple已经将iOS应用程序的编译专门用于macOS。

您可以通读this answer and thread来查看使其在Windows上运行的变通方法。

Flutter 基本上有没有其他方式,但XamarinNativeScript提供了支持。

答案 2 :(得分:1)

您可以使用Mac(或Hackintosh或VM)进行此操作,但是由于我们无权访问macOS机器,因此可以通过 Codemagic Travis CI远程使用一台 —完全免费! (只要您的项目在GitHub,Bitbucket或GitLab存储库上)。

首先,创建一个帐户或登录codemagic.io

然后,单击应用程序旁边的设置(齿轮)图标。向下滚动并单击“构建”。确保将“模式”设置为“调试”,然后在“ Build for platform”下选择“ iOS”。

然后,构建应用(开始您的第一个构建)。

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

More info

答案 3 :(得分:0)

您可以阅读this article

它使用一些工具和CodeMagic来为Ios构建Flutter应用。

  1. 将您的应用放到GitHub(公共)上,并授予对codemagic的访问权限
  2. 然后,您应该使用IOS的代码魔术来构建应用程序。
  3. 然后,您应该使用Cydia Impactor对以下文件进行签名: CodeMagic已发送给您
  4. 通过安装libimobiledevice来准备Windows机器, ideviceinstaller。
  5. 修改Flutter代码以不查找Xcode
  6. 运行和调试

我使用了这种方法,效果很好,您可以热加载和调试应用程序,但缺点是您必须在Cydia Impactor中输入Apple ID密码,以确保您应该使用第二个Apple ID,并且在Apple置备配置文件到期后,再次与Cydia Impactor签署代码。但比Mac或租用Mac便宜得多。

答案 4 :(得分:0)

我建议您使用虚拟机执行操作。.我在Windows 10上安装了Mojave MacOS,并且运行顺利!

可以从https://getintopc.com/softwares/operating-systems/mac-os-mojave-10-14-1-vmware-image-free-download/中获得莫哈韦沙漠图像

我发现这很有用,因为当我有戴尔自由度时,我有一些我想离开Mac世界的东西。

答案 5 :(得分:0)

问了这个问题三年后:

https://aws.amazon.com/about-aws/whats-new/2020/11/announcing-amazon-ec2-mac-instances-for-macos/

AWS现在支持一个需求macOS作为EC2实例。 尚未发布,还没有自己测试过,但是希望,它可以代替痛苦的Mac mini,它在没有工作与生活平衡的情况下会更加努力工作XD