前言
由于種種問(wèn)題,項(xiàng)目的 flutter 版本使用的是 Flutter 1.12.13+hotfix.8散庶,沒(méi)有對(duì)其升級(jí)蕉堰,升級(jí)后怕影響項(xiàng)目,我是一直想著去升級(jí)它悲龟,但是同事不同意屋讶,怕出錯(cuò)了麻煩,畢竟坑真的很多须教,項(xiàng)目又要一直迭代皿渗,沒(méi)有那么多時(shí)間去整理這些。由于 flutter 沒(méi)有升級(jí)到最新版轻腺,所以 Xcode12.0 以后的版本也匹配不上乐疆,導(dǎo)致跑不起來(lái)真機(jī),自己又是iOS 開(kāi)發(fā)者贬养,公司電腦一直用的是 Xcode11的版本挤土,自己電腦用的xcode12.4 的版本,有時(shí)搞搞 SwiftUI必須要用 Xcode12以后的版本煤蚌,有升級(jí)強(qiáng)迫癥的我著實(shí)有點(diǎn)難受耕挨,今天實(shí)在忍受不了细卧,閑來(lái)沒(méi)事看看有沒(méi)有方法可以不升級(jí) flutter版本尉桩,又能使用 Xcode以后的版本,皇天不負(fù)劃水人贪庙,終于給我找到了蜘犁,哈哈哈哈。
flutter 入門到精通教學(xué)視頻
百度網(wǎng)盤鏈接: https://pan.baidu.com/s/1XmYXyTEFnkqveo8yZETv6w 密碼: 2kop
先來(lái)看一下flutter報(bào)的錯(cuò)誤信息
Running Xcode build...
├─Assembling Flutter resources... 4.4s
└─Compiling, linking and signing... 8.0s
Xcode build done. 20.7s
═══════════════════════════════════════════════════════════════════════════════════
Error launching app. Try launching from within Xcode via:
open ios/Runner.xcworkspace
Your Xcode version may be too old for your iOS version.
═══════════════════════════════════════════════════════════════════════════════════
2021-02-24 00:10:19.786 ios-deploy[49095:316027] [ !! ] Error 0xe8000022: The service is invalid. AMDeviceSecureStartService(device, CFSTR("com.apple.debugserver"), NULL, &con)
Could not install build/ios/iphoneos/Runner.app on 00008030-0006204E1A78802E.
Try launching Xcode and selecting "Product > Run" to fix the problem:
open ios/Runner.xcworkspace
Installing and launching... 7.9s
Error launching application on James.
原因
原因是 flutter中配置 iOS 版本的文件與 xcode 最新版不兼容止邮,畢竟iOS版本更新快这橙,flutter 也在不斷升級(jí)更新奏窑,在 flutter SDK的目錄中 ios-deploy 文件夾配置 iOS 的版本信息,我們只要更新這個(gè)文件夾的內(nèi)容就可以解決問(wèn)題了屈扎。
ios-deploy 目錄位置: flutter/bin/cache/artifacts/ios-deploy
解決方法
我們只需要更新 ios-deploy目錄的 ios-deploy 就可以解決這個(gè)問(wèn)題埃唯。
1.ios-deploy地址:ios-deploy下載,選擇最新的版本把 source code下載下來(lái)
2.用Xcode打開(kāi)ios-deploy.xcodeproj鹰晨,選中ios-deploy跟 My Mac墨叛,注意此時(shí)的 Products目錄下的 ios-deploy 還是紅色的,是沒(méi)有的模蜡,然后跑一下,就會(huì)生成一個(gè) ios-deploy程序漠趁。
3.點(diǎn)擊products 目錄里面的 ios-deploy 右鍵選擇 Show in Finder,跳到文件夾目錄
4.拷貝 ios-deploy 程序放到 flutter SDK 目錄的 ios-depoly 里面替換到原來(lái)的
5.最后重啟 vs code,就是你編寫(xiě)項(xiàng)目的應(yīng)用程序,就可以使用低版本的 flutter忍疾,跑最新版的 Xcode 了闯传。