Xcode編譯經常遇到各種問題,處理起來費時費力,挺打擊學習積極性的。記錄下這些問題,方便自己也幫助后來人。
1、The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.
編譯的時候遇到:
Showing All Messages
:-1: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.
網上有很多解決方法,我是用這個方法解決的:
移除cocopods后重新安裝
1、打開終端,運行sudo gem install cocoapods-deintegrate安裝快速解除項目cocopods依賴的庫
2、安裝成功后,cd到你項目的更目錄運行pod deintegrate解除項目cocopods依賴
3、運行pod install,重新安裝cocopods
2、Command PhaseScriptExecution failed with a nonzero exit code
編譯的時候遇到:
/bin/sh: /packages/flutter_tools/bin/xcode_backend.sh: No such file or directory
Command PhaseScriptExecution failed with a nonzero exit code
解決辦法:
Project -> User-Defined -> FLUTTER_ROOT 改成本地 flutter SDK路徑

感謝 issues 上的小哥,給你個??
還有種情況, Project -> User-Defined 并沒有 FLUTTER_ROOT 選項:
在項目目錄下執(zhí)行 flutter run 可以正常運行到手機,但是在Xcode build 還是有問題。
這時需要手動添加 FLUTTER_ROOT 到 User-Defined:

添加之后:

就可以正常在Xcode build 安裝到手機了。
3、could not find included file 'Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig' in search paths (in target 'Runner')
Showing All Messages
:-1: /Users/項目路徑/ios/Flutter/Debug.xcconfig:1: could not find included file 'Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig' in search paths (in target 'Runner')
flutter build ios 后出現(xiàn):
Error output from CocoaPods:
?
Cloning into '/var/folders/tn/1d782flx6z11fczzvkj0cbkh0000gn/T/d20190923-87862-53h87v'...
fatal: unable to access 'https://chromium.googlesource.com/webm/libwebp/': Failed to connect to chromium.googlesource.com port 443: Operation timed out
[!] Automatically assigning platform `ios` with version `8.0` on target `Runner` because no platform was specified. Please specify a platform for this target in your
Podfile. See `https://guides.cocoapods.org/syntax/podfile.html#platform`.
pod install 后出現(xiàn):
Failed to connect to chromium.googlesource.com port 443: Operation timed out
解決辦法:
這是因為terminal沒有走代理的流量,
使用git config --global http.proxy "localhost:port",設置代理。
port是端口號,根據(jù)不同的vpn不一樣,我的端口是10080。
執(zhí)行 git config --global http.proxy "localhost:10080"
4、Xcode build succeed,啟動空白,出現(xiàn)下面信息:
2019-09-23 16:50:13.088675+0800 Runner[1474:642130] [VERBOSE-2:dart_vm_data.cc(19)] VM snapshot invalid and could not be inferred from settings.
2019-09-23 16:50:13.089348+0800 Runner[1474:642130] [VERBOSE-2:dart_vm.cc(245)] Could not setup VM data to bootstrap the VM from.
2019-09-23 16:50:13.089495+0800 Runner[1474:642130] [VERBOSE-2:dart_vm_lifecycle.cc(89)] Could not create Dart VM instance.
2019-09-23 16:50:13.090369+0800 Runner[1474:642130] [VERBOSE-3:shell.cc(212)] Check failed: vm. Must be able to initialize the VM.
(lldb)
5、 CocoaPods did not set the base configuration of your project because your project already has a custom config set.
Xcode build 的時候出現(xiàn):
[!] CocoaPods did not set the base configuration of your project because your project already has a custom config set. In order for CocoaPods integration to work at all, please either set the base configurations of the target
RunnertoTarget Support Files/Pods-Runner/Pods-Runner.profile.xcconfigor include theTarget Support Files/Pods-Runner/Pods-Runner.profile.xcconfigin your build configuration (Flutter/Release.xcconfig).

6、 Automatically assigning platform ios with version 8.0 on target Runner because no platform was specified
[!] Automatically assigning platform
ioswith version8.0on targetRunnerbecause no platform was specified. Please specify a platform for this target in your Podfile. Seehttps://guides.cocoapods.org/syntax/podfile.html#platform.
解決辦法:打開 ios/Podflie 文件:
# Using a CDN with CocoaPods 1.7.2 or later can save a lot of time on pod installation, but it's experimental rather than the default.
# source 'https://cdn.cocoapods.org/'
# Uncomment this line to define a global platform for your project
# platform :ios, '9.0'
platform :ios, '8.0'
7、打包時遇到:Failed to verify bitcode in Flutter.framework/Flutter:error: Bundle only contains bitcode-marker xxx
Failed to verify bitcode in Flutter.framework/Flutter:
error: Bundle only contains bitcode-marker /var/folders/tn/1d782flx6z11fczzvkj0cbkh0000gn/T/IDEDistributionOptionThinning.~~~yLNftH/Payload/Runner.app/Frameworks/Flutter.framework/Flutter (armv7)

關于 bitcode的問題,我檢查了下用到的第三方SDK,應該是百度地圖的問題,我引入了個第三方插件(吐槽下沒官方插件),百度地圖有支持和不支持bitcode的兩個SDK,我取消這個插件就沒有報這個錯了,奇怪的是,再次引入同一個插件,也可以正常打包,所以說這個問題還沒有完全解決。
大家可以試下這個處理方法:

TARGETS -> Build Seettings 搜 arm,試一下把其他刪除,只留下armv7跟armv7s或者只留下armv7
8、error: linker command failed with exit code 1 (use -v to see invocation)
ld: framework not found App
clang: error: linker command failed with exit code 1 (use -v to see invocation)
解決辦法:
http://www.itdecent.cn/p/201df7e9a52f
我是clean Xcode之后就可以了
9、Runner has conflicting provisioning settings. Runner is automatically signed, but code signing identity iPhone Distribution
Showing All Messages
:-1: Runner has conflicting provisioning settings. Runner is automatically signed, but code signing identity iPhone Distribution: (開發(fā)者賬號) has been manually specified. Set the code signing identity value to "iPhone Developer" in the build settings editor, or switch to manual signing in the project editor. (in target 'Runner')
解決辦法:
用的是P12證書,改成手動簽名:
