flutter項目,通過xcode真機(jī)運(yùn)行報錯如下:
問題 :futter iOS 14.0 build error :
Failed to register observatory port with mDNS with error -65555.
On iOS 14+, local network broadcast in apps need to be declared in the app's Info.plist. Debug and profile Flutter apps and modules host VM services on the local network to support debugging features such as hot reload and DevTools. To make your Flutter app or module attachable and debuggable, add a '_dartobservatory._tcp' value to the 'NSBonjourServices' key in your Info.plist for the Debug/Profile configurations. For more information, see https://flutter.dev/docs/development/add-to-app/ios/project-setup#local-network-privacy-permissions
解決:(參考上述官方鏈接文檔)
On iOS 14 and higher, enable the Dart multicast DNS service in the Debug version of your app to add?debugging functionalities such as hot-reload and DevTools?via?flutter attach.
1、將應(yīng)用程序的Info.plist重命名為Info-Debug.plist。復(fù)制一個名為Info-Release.plist的副本,并將其添加到Xcode項目中。

2、在Info-Debug.plist中,添加鍵NSBonjourServices并將值設(shè)置為?_dartobservatory._tcp ?
(可選)將鍵NSLocalNetworkUsageDescription添加到所需的自定義權(quán)限對話框文本中。(備注:‘Allow Flutter tools on your computer to connect and debug your application.This prompt will not appear on release builds.’)

3、在target’s build settings, 修改?Info.plist File?路徑 path/to/Info.plist 為 path/to/Info-$(CONFIGURATION).plist.

4、在?target’s ->?Build Settings > Build Phases > Copy Bundle?Resources build phase, 如果有Info-Release.plist?刪除即可(下圖我已經(jīng)刪除)

補(bǔ)充:
如果再次運(yùn)行還有次問題,clean項目,重新運(yùn)行即可。歡迎補(bǔ)充??