之前Flutter項目都妥妥的,升級Xcode11.4後卻報錯。
error: Building for iOS, but the linked and embedded framework 'App.framework' was built for iOS Simulator. (in target 'Runner' from project 'Runner')
別急,首先Clean下項目,在項目根目錄下:
flutter clean
然後刪除ios/Flutter/App.framework:
rm -rf ios/Flutter/App.framework
再次運行,應該就OK了。
如果還是不行的話,雙擊ios/Runner.xcworkspace。在Xcode左側Navigator中,刪除App.framework和Flutter.framework。
在Runner Target -> Build Phases -> Link Binary With Libraries和Embed Frameworks中,確認下圖紅框中沒有App.framework和Flutter.framework。
將Build Phases -> Thin Binary中的腳本改爲如下:
/bin/sh "$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh" embed
/bin/sh "$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh" thin
切換到Runner Target的Build Settings面板,雙擊Other Linker Flags項,在彈出窗口中點擊**+**號,並輸入:
$(inherited) -framework Flutter