我最近有一台Mac,可以测试使用Flutter / Dart开发的iOS应用程序。但是,当我尝试将所有文件传输到Mac并进行测试时,它将安装在“正在运行Xcode Build”上。
我正在pubspec.yaml文件中导入2件事:
dependicies:
flutter:
sdk:
cupertino_icons: ^0.1.2
firebase_admob: ^0.9.0+10
在我的podfile中,我被告知要下载到我拥有的Google admobs文档中
pod 'Google-Mobile_Ads_SDK"
我的Flutter Doctors阅读:
[flutter] flutter doctor -v
Unable to find any JVMs matching version "(null)".
No Java runtime present, try --request to install.
Unable to find any JVMs matching version "(null)".
No Java runtime present, try --request to install.
[✓] Flutter (Channel stable, v1.12.13+hotfix.5, on Mac OS X 10.15.2 19C57, locale en-US)
• Flutter version 1.12.13+hotfix.5 at /Users/priscilla/Desktop/Temp/flutter
• Framework revision 27321ebbad (5 weeks ago), 2019-12-10 18:15:01 -0800
• Engine revision 2994f7e1e6
• Dart version 2.7.0
[!] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
• Android SDK at /Users/priscilla/Library/Android/sdk
• Android NDK location not configured (optional; useful for native profiling support)
• Platform android-29, build-tools 29.0.2
• Java binary at: /usr/bin/java
✗ Could not determine java version
[✓] Xcode - develop for iOS and macOS (Xcode 11.3.1)
• Xcode at /Applications/Xcode.app/Contents/Developer
• Xcode 11.3.1, Build version 11C504
• CocoaPods version 1.8.4
[!] Android Studio (not installed)
• Android Studio not found; download from https://developer.android.com/studio/index.html
(or visit https://flutter.dev/setup/#android-setup for detailed instructions).
[✓] Connected device (1 available)
• iPhone 11 Pro Max • 754DF0BD-203E-4A0A-B785-E92D4B1D9C38 • ios • com.apple.CoreSimulator.SimRuntime.iOS-13-3 (simulator)
! Doctor found issues in 2 categories.
对我的info.plist所做的更改是:(实际的应用程序ID在我的代码中,只是不想在此处发布)
<key>GADApplicationIdentifier</key>
<string>[APP_ID]</string>
如果我要从头开始创建一个新的Flutter项目,那么给定的代码可以很好地运行。只是当我尝试将Windows PC上的项目文件导入到Mac时。
我认为一个解决方案是创建一个新的Flutter项目并在创建导入文件的同时,但是我不确定该怎么做。因此,此刻,我创建了一个新的Flutter项目,删除了最初加载的所有文件,然后将其替换为我的项目文件。
答案 0 :(得分:2)
就我而言,我使用 Firebase Firestore。
它不会卡住,只是在 Xcode 中构建需要太长时间。不要忘记按照 here
中的官方文档改进 iOS 构建时间 <块引用>目前 Firestore iOS SDK 依赖于大约 50 万行 在 XCode 中构建可能需要 5 分钟以上的 C++ 代码。到 显着减少构建时间,您可以使用预编译版本 通过向 Flutter 项目中的 ios/Podfile 添加 1 行。
请打开该文档以缩短构建时间,因为代码可能会更新。
在您的 iOS podfile 上添加那 1 行之后,不要忘记在重建项目之前执行 flutter clean
。第二次构建项目时它应该更快(在我的情况下大约 1 分钟)
答案 1 :(得分:0)
我卸下了外部设备,特别是Mac上的外接显示器。 然后进行构建。
我的构建时间从平均10分钟缩短到最多0.5至2分钟。
答案 2 :(得分:0)
iOS(Build) IPA 构建大约需要 14456.14 秒,即(超过 4 小时)更新到以下版本后,它减少到 2143.3 秒 即(少于40 分钟)
更改自:
environment:
sdk: ">=2.7.0 <3.0.0"
更改为:
environment:
sdk: '>=2.12.0 <3.0.0'
把整个项目改成空安全