为设备构建时遇到错误 - 颤动

6 xcode build ios dart flutter

在 Flutter 中为 iOS 构建设备时遇到错误,我尝试了很多方法但还没有解决方案。此问题发生在 flutter firebase 项目中,并且发布卡住了 4 天以上。请指导我尽快解决这个问题

> Error output from Xcode build: ?
>     2020-09-04 19:28:49.310 xcodebuild[12210:62950] warning:  The file reference for
> "Objective-C/TOCropViewController/Models/TOActivityCroppedImageProvider.h"
> is a member of
>     multiple groups ("TOCropViewController" and "TOCropViewController"); this indicates a malformed project.  Only the
> membership in one of the groups will be preserved (but
>     membership in targets will be unaffected).  If you want a reference to the same file in more than one group, please add another
> reference to the same path.
>     2020-09-04 19:28:49.310 xcodebuild[12210:62950] warning:  The file reference for
> "Objective-C/TOCropViewController/Views/TOCropOverlayView.h" is a
> member of multiple
>     groups ("TOCropViewController" and "TOCropViewController"); this indicates a malformed project.  Only the membership in one of the
> groups will be preserved (but
>     membership in targets will be unaffected).  If you want a reference to the same file in more than one group, please add another
> reference to the same path.
>     2020-09-04 19:28:49.310 xcodebuild[12210:62950] warning:  The file reference for
> "Objective-C/TOCropViewController/Models/TOCroppedImageAttributes.h"
> is a member of
>     multiple groups ("TOCropViewController" and "TOCropViewController"); this indicates a malformed project.  Only the
> membership in one of the groups will be preserved (but
>     membership in targets will be unaffected).  If you want a reference to the same file in more than one group, please add another
> reference to the same path.
>     2020-09-04 19:28:49.310 xcodebuild[12210:62950] warning:  The file reference for
> "Objective-C/TOCropViewController/Views/TOCropScrollView.h" is a
> member of multiple
>     groups ("TOCropViewController" and "TOCropViewController"); this indicates a malformed project.  Only the membership in one of the
> groups will be preserved (but
>     membership in targets will be unaffected).  If you want a reference to the same file in more than one group, please add another
> reference to the same path.
>     2020-09-04 19:28:49.310 xcodebuild[12210:62950] warning:  The file reference for "Objective-C/TOCropViewController/Views/TOCropToolbar.h"
> is a member of multiple groups
>     ("TOCropViewController" and "TOCropViewController"); this indicates a malformed project.  Only the membership in one of the
> groups will be preserved (but membership in
>     targets will be unaffected).  If you want a reference to the same file in more than one group, please add another reference to the same
> path.
>     2020-09-04 19:28:49.310 xcodebuild[12210:62950] warning:  The file reference for "Objective-C/TOCropViewController/Views/TOCropView.h" is
> a member of multiple groups
>     ("TOCropViewController" and "TOCropViewController"); this indicates a malformed project.  Only the membership in one of the
> groups will be preserved (but membership in
>     targets will be unaffected).  If you want a reference to the same file in more than one group, please add another reference to the same
> path.
>     2020-09-04 19:28:49.310 xcodebuild[12210:62950] warning:  The file reference for
> "Objective-C/TOCropViewController/TOCropViewController.h" is a member
> of multiple groups
>     ("TOCropViewController" and "TOCropViewController"); this indicates a malformed project.  Only the membership in one of the
> groups will be preserved (but membership in
>     targets will be unaffected).  If you want a reference to the same file in more than one group, please add another reference to the same
> path.
>     2020-09-04 19:28:49.310 xcodebuild[12210:62950] warning:  The file reference for
> "Objective-C/TOCropViewController/Models/TOCropViewControllerTransitioning.h"
> is a member
>     of multiple groups ("TOCropViewController" and "TOCropViewController"); this indicates a malformed project.  Only the
> membership in one of the groups will be preserved
>     (but membership in targets will be unaffected).  If you want a reference to the same file in more than one group, please add another
> reference to the same path.
>     ** BUILD FAILED **
> 
> 
> Xcode's output: ?
>     In file included from /Users/jimmy/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/fluttertoast-7.0.4/ios/Classes/FluttertoastPlugin.m:2:
>     /Users/jimmy/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/fluttertoast-7.0.4/ios/Classes/UIView+Toast.h:328:19:
> warning: empty paragraph passed to '@param'
>     command [-Wdocumentation]
>      @param sharedStyle
>      ~~~~~~~~~~~~~~~~~^
>     /Users/jimmy/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/fluttertoast-7.0.4/ios/Classes/UIView+Toast.h:343:25:
> warning: empty paragraph passed to '@param'
>     command [-Wdocumentation]
>      @param allowTapToDismiss
>      ~~~~~~~~~~~~~~~~~~~~~~~^
>     /Users/jimmy/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/fluttertoast-7.0.4/ios/Classes/UIView+Toast.h:343:9:
> warning: parameter 'allowTapToDismiss' not found
>     in the function declaration [-Wdocumentation]
>      @param allowTapToDismiss
>             ^~~~~~~~~~~~~~~~~
>     /Users/jimmy/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/fluttertoast-7.0.4/ios/Classes/UIView+Toast.h:343:9:
> note: did you mean 'tapToDismissEnabled'?
>      @param allowTapToDismiss
>             ^~~~~~~~~~~~~~~~~
>             tapToDismissEnabled
>     /Users/jimmy/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/fluttertoast-7.0.4/ios/Classes/UIView+Toast.h:362:20:
> warning: empty paragraph passed to '@param'
>     command [-Wdocumentation]
>      @param queueEnabled
>      ~~~~~~~~~~~~~~~~~~^
>     /Users/jimmy/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/fluttertoast-7.0.4/ios/Classes/FluttertoastPlugin.m:20:23:
> warning: unused variable 'viewController'
>     [-Wunused-variable]
>         UIViewController *viewController =
>                           ^
>     /Users/jimmy/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/fluttertoast-7.0.4/ios/Classes/FluttertoastPlugin.m:99:21:
> warning: unused variable 'topPadding'
>     [-Wunused-variable]
>                 CGFloat topPadding = window.safeAreaInsets.top;
>                         ^
>     /Users/jimmy/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/fluttertoast-7.0.4/ios/Classes/FluttertoastPlugin.m:100:21:
> warning: unused variable 'bottomPadding'
>     [-Wunused-variable]
>                 CGFloat bottomPadding = window.safeAreaInsets.bottom;
>                         ^
>     /Users/jimmy/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/fluttertoast-7.0.4/ios/Classes/FluttertoastPlugin.m:73:19:
> warning: unused variable 'size'
>     [-Wunused-variable]
>             NSNumber *size = call.arguments[@"size"];
>                       ^
>     8 warnings generated.
>     In file included from /Users/jimmy/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/fluttertoast-7.0.4/ios/Classes/FluttertoastPlugin.m:2:
>     /Users/jimmy/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/fluttertoast-7.0.4/ios/Classes/UIView+Toast.h:328:19:
> warning: empty paragraph passed to '@param'
>     command [-Wdocumentation]
>      @param sharedStyle
>      ~~~~~~~~~~~~~~~~~^
>     /Users/jimmy/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/fluttertoast-7.0.4/ios/Classes/UIView+Toast.h:343:25:
> warning: empty paragraph passed to '@param'
>     command [-Wdocumentation]
>      @param allowTapToDismiss
>      ~~~~~~~~~~~~~~~~~~~~~~~^
>     /Users/jimmy/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/fluttertoast-7.0.4/ios/Classes/UIView+Toast.h:343:9:
> warning: parameter 'allowTapToDismiss' not found
>     in the function declaration [-Wdocumentation]
>      @param allowTapToDismiss
>             ^~~~~~~~~~~~~~~~~
>     /Users/jimmy/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/fluttertoast-7.0.4/ios/Classes/UIView+Toast.h:343:9:
> note: did you mean 'tapToDismissEnabled'?
>      @param allowTapToDismiss
>             ^~~~~~~~~~~~~~~~~
>             tapToDismissEnabled
>     /Users/jimmy/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/fluttertoast-7.0.4/ios/Classes/UIView+Toast.h:362:20:
> warning: empty paragraph passed to '@param'
>     command [-Wdocumentation]
>      @param queueEnabled
>      ~~~~~~~~~~~~~~~~~~^
>     /Users/jimmy/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/fluttertoast-7.0.4/ios/Classes/FluttertoastPlugin.m:20:23:
> warning: unused variable 'viewController'
>     [-Wunused-variable]
>         UIViewController *viewController =
>                           ^
>     /Users/jimmy/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/fluttertoast-7.0.4/ios/Classes/FluttertoastPlugin.m:99:21:
> warning: unused variable 'topPadding'
>     [-Wunused-variable]
>                 CGFloat topPadding = window.safeAreaInsets.top;
>                         ^
>     /Users/jimmy/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/fluttertoast-7.0.4/ios/Classes/FluttertoastPlugin.m:100:21:
> warning: unused variable 'bottomPadding'
>     [-Wunused-variable]
>                 CGFloat bottomPadding = window.safeAreaInsets.bottom;
>                         ^
>     /Users/jimmy/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/fluttertoast-7.0.4/ios/Classes/FluttertoastPlugin.m:73:19:
> warning: unused variable 'size'
>     [-Wunused-variable]
>             NSNumber *size = call.arguments[@"size"];
>                       ^
>     8 warnings generated.
>     /Users/jimmy/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_messaging-6.0.16/ios/Classes/FLTFirebaseMessagingPlugin.m:195:43:
> warning:
>     'FIRMessagingRemoteMessage' is deprecated: FCM direct channel is deprecated, please use APNs for downstream message handling.
> [-Wdeprecated-declarations]
>     - (void)applicationReceivedRemoteMessage:(FIRMessagingRemoteMessage
> *)remoteMessage {
>                                               ^
>     In module 'FirebaseMessaging' imported from /Users/jimmy/Documents/firebaseproject/ios/Pods/Headers/Public/Firebase/Firebase.h:72:
>     /Users/jimmy/Documents/firebaseproject/ios/Pods/FirebaseMessaging/FirebaseMessaging/Sources/Public/FIRMessaging.h:219:1:
> note: 'FIRMessagingRemoteMessage' has been explicitly
>     marked deprecated here
>     __deprecated_msg(
>     ^
>     In module 'UIKit' imported from /Users/jimmy/Documents/firebaseproject/ios/Pods/Target Support
> Files/firebase_messaging/firebase_messaging-prefix.pch:2:
>     In module 'Foundation' imported from
>     /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.5.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKit.h:8:
>     In module 'CoreFoundation' imported from
>     /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.5.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h
>     :6:
>     In module 'Darwin' imported from
>     /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.5.sdk/System/Library/Frameworks/CoreFoundation.framework/Headers/CoreFoun
>     dation.h:16:
>     /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.5.sdk/usr/include/sys/cdefs.h:191:48:
> note: expanded from macro
>     '__deprecated_msg'
>             #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
>                                                           ^
>     /Users/jimmy/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_messaging-6.0.16/ios/Classes/FLTFirebaseMessagingPlugin.m:307:24:
> warning:
>     'FIRMessagingRemoteMessage' is deprecated: FCM direct channel is deprecated, please use APNs for downstream message handling.
> [-Wdeprecated-declarations]
>         didReceiveMessage:(FIRMessagingRemoteMessage *)remoteMessage {
>                            ^
>     In module 'FirebaseMessaging' imported from /Users/jimmy/Documents/firebaseproject/ios/Pods/Headers/Public/Firebase/Firebase.h:72:
>     /Users/jimmy/Documents/firebaseproject/ios/Pods/FirebaseMessaging/FirebaseMessaging/Sources/Public/FIRMessaging.h:219:1:
> note: 'FIRMessagingRemoteMessage' has been explicitly
>     marked deprecated here
>     __deprecated_msg(
>     ^
>     In module 'UIKit' imported from /Users/jimmy/Documents/firebaseproject/ios/Pods/Target Support
> Files/firebase_messaging/firebase_messaging-prefix.pch:2:
>     In module 'Foundation' imported from
>     /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.5.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKit.h:8:
>     In module 'CoreFoundation' imported from
>     /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.5.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h
>     :6:
>     In module 'Darwin' imported from
>     /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.5.sdk/System/Library/Frameworks/CoreFoundation.framework/Headers/CoreFoun
>     dation.h:16:
>     /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.5.sdk/usr/include/sys/cdefs.h:191:48:
> note: expanded from macro
>     '__deprecated_msg'
>             #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
>                                                           ^
>     /Users/jimmy/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_messaging-6.0.16/ios/Classes/FLTFirebaseMessagingPlugin.m:141:30:
> warning:
>     'shouldEstablishDirectChannel' is deprecated: FCM direct channel is deprecated, please use APNs channel for downstream message
> delivery. [-Wdeprecated-declarations]
>         [FIRMessaging messaging].shouldEstablishDirectChannel = true;
>                                  ^
>     In module 'FirebaseMessaging' imported from /Users/jimmy/Documents/firebaseproject/ios/Pods/Headers/Public/Firebase/Firebase.h:72:
>     /Users/jimmy/Documents/firebaseproject/ios/Pods/FirebaseMessaging/FirebaseMessaging/Sources/Public/FIRMessaging.h:283:56:
> note: 'shouldEstablishDirectChannel' has been
>     explicitly marked deprecated here
>     @property(nonatomic) BOOL shouldEstablishDirectChannel DEPRECATED_MSG_ATTRIBUTE(
>                                                            ^
>     In module 'UIKit' imported from /Users/jimmy/Documents/firebaseproject/ios/Pods/Target Support
> Files/firebase_messaging/firebase_messaging-prefix.pch:2:
>     In module 'Foundation' imported from
>     /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.5.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKit.h:8:
>     In module 'CoreFoundation' imported from
>     /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.5.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h
>     :6:
>     In module 'Darwin' imported from
>     /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.5.sdk/System/Library/Frameworks/CoreFoundation.framework/Headers/CoreFoun
>     dation.h:16:
>     /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.5.sdk/usr/include/AvailabilityMacros.h:182:64:
> note: expanded from macro
>     'DEPRECATED_MSG_ATTRIBUTE'
>                 #define DEPRECATED_MSG_ATTRIBUTE(s) __attribute__((deprecated(s)))
>                                                                    ^
>     /Users/jimmy/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_messaging-6.0.16/ios/Classes/FLTFirebaseMessagingPlugin.m:196:52:
> warning: 'appData' is
>     deprecated [-Wdeprecated-declarations]
>       [self didReceiveRemoteNotification:remoteMessage.appData];
>                                                        ^
>     In module 'FirebaseMessaging' imported from /Users/jimmy/Documents/firebaseproject/ios/Pods/Headers/Public/Firebase/Firebase.h:72:
>     /Users/jimmy/Documents/firebaseproject/ios/Pods/FirebaseMessaging/FirebaseMessaging/Sources/Public/FIRMessaging.h:226:62:
> note: 'appData' has been explicitly marked deprecated
>     here
>     @property(nonatomic, readonly, strong) NSDictionary *appData DEPRECATED_ATTRIBUTE;
>                                                                  ^
>     In module 'UIKit' imported from /Users/jimmy/Documents/firebaseproject/ios/Pods/Target Support
> Files/firebase_messaging/firebase_messaging-prefix.pch:2:
>     In module 'Foundation' imported from
>     /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.5.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKit.h:8:
>     In module 'CoreFoundation' imported from
>     /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.5.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h
>     :6:
>     In module 'Darwin' imported from
>     /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.5.sdk/System/Library/Frameworks/CoreFoundation.framework/Headers/CoreFoun
>     dation.h:16:
>     /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.5.sdk/usr/include/AvailabilityMacros.h:180:60:
> note: expanded from macro
>     'DEPRECATED_ATTRIBUTE'
>             #define DEPRECATED_ATTRIBUTE        __attribute__((deprecated))
>                                                                ^
>     /Users/jimmy/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_messaging-6.0.16/ios/Classes/FLTFirebaseMessagingPlugin.m:306:1:
> warning: implementing
>     deprecated method [-Wdeprecated-implementations]
>     - (void)messaging:(FIRMessaging *)messaging
>     ^
>     In module 'FirebaseMessaging' imported from /Users/jimmy/Documents/firebaseproject/ios/Pods/Headers/Public/Firebase/Firebase.h:72:
>     /Users/jimmy/Documents/firebaseproject/ios/Pods/FirebaseMessaging/FirebaseMessaging/Sources/Public/FIRMessaging.h:253:1:
> note: method 'messaging:didReceiveMessage:' declared
>     here
>     - (void)messaging:(FIRMessaging *)messaging
>     ^
>     /Users/jimmy/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_messaging-6.0.16/ios/Classes/FLTFirebaseMessagingPlugin.m:308:63:
> warning: 'appData' is
>     deprecated [-Wdeprecated-declarations]
>       [_channel invokeMethod:@"onMessage" arguments:remoteMessage.appData];
>                                                                   ^
>     In module 'FirebaseMessaging' imported from /Users/jimmy/Documents/firebaseproject/ios/Pods/Headers/Public/Firebase/Firebase.h:72:
>     /Users/jimmy/Documents/firebaseproject/ios/Pods/FirebaseMessaging/FirebaseMessaging/Sources/Public/FIRMessaging.h:226:62:
> note: 'appData' has been explicitly marked deprecat

Jha*_*kiz 5

Jimmy Anderson运行后flutter upgrade,对于现有项目,您需要检查dependencies使用的项目是否也是最新的。

我有同样的错误,version 1.20.1解决方案是删除Pods文件夹,pubspec.lock文件:

): 彻底清除所有指向链接的点:

flutter clean
rm -Rf ios/Pods
rm -Rf ios/.symlinks
rm -Rf ios/Flutter/Flutter.framework
rm -Rf ios/Flutter/Flutter.podspec
Run Code Online (Sandbox Code Playgroud)

): 最后运行这些:

rm ios/Podfile
rm pubspec.lock
flutter run
Run Code Online (Sandbox Code Playgroud)

如果有人有最新的答案,则可以完成此临时解决方案。