【问题标题】:Flutter : Could not build the precompiled application for the device. Error launching application on iPhoneFlutter:无法为设备构建预编译的应用程序。在 iPhone 上启动应用程序时出错
【发布时间】:2023-03-07 16:58:01
【问题描述】:

我无法在 IOS 设备上运行我的 Flutter 项目。

这是我在flutter run后得到的。我不明白为什么。请查看下面的错误并告诉我如何解决此问题。

Launching lib/main.dart on iPhone in debug mode...
Automatically signing iOS for device deployment using specified development team
in Xcode project: L24VC6F98D
Running Xcode build...                                                  
Xcode build done.                                            8,2s
Failed to build iOS app
Error output from Xcode build:
↳
    2020-09-18 11:56:14.934 xcodebuild[29414:155421] 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-18 11:56:14.934 xcodebuild[29414:155421] 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-18 11:56:14.934 xcodebuild[29414:155421] 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-18 11:56:14.934 xcodebuild[29414:155421] 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-18 11:56:14.934 xcodebuild[29414:155421] 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-18 11:56:14.934 xcodebuild[29414:155421] 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-18 11:56:14.934 xcodebuild[29414:155421] 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-18 11:56:14.934 xcodebuild[29414:155421] 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.
    2020-09-18 11:56:14.978 xcodebuild[29414:155477]  DTDeviceKit: deviceType from
    d94358f0937915cc1dbf618d6c7be90be0612766 was NULL
    2020-09-18 11:56:15.129 xcodebuild[29414:155486]  DTDeviceKit: deviceType from
    d94358f0937915cc1dbf618d6c7be90be0612766 was NULL
    2020-09-18 11:56:15.129 xcodebuild[29414:155486]  DTDeviceKit: deviceType from
    d94358f0937915cc1dbf618d6c7be90be0612766 was NULL
    ** BUILD FAILED **


Xcode's output:
↳
    Command CompileSwift failed with a nonzero exit code
    /Users/punreachrany/Developer/flutter/.pub-cache/hosted/pub.dartlang.org/kakao
    _flutter_sdk-0.4.2/ios/Classes/SwiftKakaoFlutterSdkPlugin.swift:103:82: error:
    cannot convert value of type 'Error' to specified type
    'ASWebAuthenticationSessionError.Code'
                        if case ASWebAuthenticationSessionError.Code.canceledLogin
                        = err {
                                                                                     ^~~
    /Users/punreachrany/Developer/flutter/.pub-cache/hosted/pub.dartlang.org/kakao
    _flutter_sdk-0.4.2/ios/Classes/SwiftKakaoFlutterSdkPlugin.swift:108:72: error:
    cannot convert value of type 'Error' to specified type
    'SFAuthenticationError.Code'
                        if case SFAuthenticationError.Code.canceledLogin = err {
                                                                           ^~~
    Command CompileSwift failed with a nonzero exit code
    Command CompileSwift failed with a nonzero exit code
    note: Using new build system
    note: Building targets in parallel
    note: Planning build
    note: Constructing build description
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'shared_preferences' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'path_provider' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'onesignal_flutter' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'leveldb-library' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'image_picker' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'abseil' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'package_info' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'esys_flutter_share' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'PromisesObjC' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'TOCropViewController-TOCropViewControllerBundle' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'TOCropViewController' from project 'Pods')
    warning: Skipping duplicate build file in Copy Headers build phase:
    /Users/punreachrany/Desktop/Flutter/PhotoEarn/ios/Pods/TOCropViewController/Ob
    jective-C/TOCropViewController/Models/TOActivityCroppedImageProvider.h (in
    target 'TOCropViewController' from project 'Pods')
    warning: Skipping duplicate build file in Copy Headers build phase:
    /Users/punreachrany/Desktop/Flutter/PhotoEarn/ios/Pods/TOCropViewController/Ob
    jective-C/TOCropViewController/Views/TOCropOverlayView.h (in target
    'TOCropViewController' from project 'Pods')
    warning: Skipping duplicate build file in Copy Headers build phase:
    /Users/punreachrany/Desktop/Flutter/PhotoEarn/ios/Pods/TOCropViewController/Ob
    jective-C/TOCropViewController/Models/TOCroppedImageAttributes.h (in target
    'TOCropViewController' from project 'Pods')
    warning: Skipping duplicate build file in Copy Headers build phase:
    /Users/punreachrany/Desktop/Flutter/PhotoEarn/ios/Pods/TOCropViewController/Ob
    jective-C/TOCropViewController/Views/TOCropScrollView.h (in target
    'TOCropViewController' from project 'Pods')
    warning: Skipping duplicate build file in Copy Headers build phase:
    /Users/punreachrany/Desktop/Flutter/PhotoEarn/ios/Pods/TOCropViewController/Ob
    jective-C/TOCropViewController/Views/TOCropToolbar.h (in target
    'TOCropViewController' from project 'Pods')
    warning: Skipping duplicate build file in Copy Headers build phase:
    /Users/punreachrany/Desktop/Flutter/PhotoEarn/ios/Pods/TOCropViewController/Ob
    jective-C/TOCropViewController/Views/TOCropView.h (in target
    'TOCropViewController' from project 'Pods')
    warning: Skipping duplicate build file in Copy Headers build phase:
    /Users/punreachrany/Desktop/Flutter/PhotoEarn/ios/Pods/TOCropViewController/Ob
    jective-C/TOCropViewController/TOCropViewController.h (in target
    'TOCropViewController' from project 'Pods')
    warning: Skipping duplicate build file in Copy Headers build phase:
    /Users/punreachrany/Desktop/Flutter/PhotoEarn/ios/Pods/TOCropViewController/Ob
    jective-C/TOCropViewController/Models/TOCropViewControllerTransitioning.h (in
    target 'TOCropViewController' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'nanopb' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'gRPC-C++-gRPCCertificates-Cpp' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'GoogleDataTransport' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'GTMSessionFetcher' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'FBSDKCoreKit' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'BoringSSL-GRPC' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'BSImageView' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'BSGridCollectionViewLayout' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'GoogleUtilities' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'GoogleDataTransportCCTSupport' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'FBSDKLoginKit' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'image_cropper' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'GoogleAppMeasurement' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'gRPC-C++' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'OneSignal-iOS10.0' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'Flutter' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'gRPC-Core' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'FirebaseFirestore' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'FirebaseAuthInterop' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'firebase_auth' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'FirebaseCore' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'firebase_core' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'firebase_database' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'cloud_firestore' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'FirebaseAnalytics' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'FirebaseInstallations' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'FirebaseCoreDiagnosticsInterop' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'FirebaseAuth' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'FirebaseDatabase' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'OneSignal-iOS11.0' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'FirebaseStorage' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'FirebaseCoreDiagnostics' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'firebase_storage' from project 'Pods')
    warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0,
    but the range of supported deployment target versions is 9.0 to 14.0.99. (in
    target 'Firebase' from project 'Pods')

Could not build the precompiled application for the device.

Error launching application on iPhone.

我能做些什么来解决这个问题?请给我一个命令行或某事。请帮我。我期待着您的回音。谢谢。

【问题讨论】:

  • 修复尝试flutter升级

标签: ios flutter compiler-errors


【解决方案1】:

是的,我在升级到 ios 14 后也遇到了这个问题。 所以,首先,将这个添加到你的 podfile 中:

platform :ios, '9.0'

post_install do |installer|
  installer.pods_project.targets.each do |target|
    target.build_configurations.each do |config|
      # drop deployment target so it works with ios14
      config.build_settings.delete 'IPHONEOS_DEPLOYMENT_TARGET
    end
  end
end

同时运行:flutter upgrade

对我来说,这两件事解决了问题。

【讨论】:

  • 它对我不起作用。您对这个问题有任何参考吗?
  • 好的,还有一件事:编辑您的 ios/Runner.xcodeproj/project.pbxproj 并将 IPHONEOS_DEPLOYMENT_TARGET 更新为 9.0(它应该在此文件中出现 3 次)。全部替换。
  • 哦,伙计...好吧,是时候等待 ios 15 了 :-) 很抱歉听到这个消息。好的,用rm -rf ios/Podfile.lock; pod repo updateflutter clean 完全更新你的 podfile 怎么样?
  • 运气好吗? (我假设你在尝试这些修复之前也做了一个正确的flutter clean
  • 您的代码 sn-p 中缺少引号 :) 另外,对于最新的颤振,您需要将 config.build_settings.delete 添加到该文件中现有的 post_install do |installer| 部分,因为它们不支持两个post_install 部分。否则,它对我有用,非常感谢。
【解决方案2】:

我刚刚遇到了同样的问题。 IOS 日志没有像 Android 那样正确描述。因此,请尝试按照下面的说明为我工作。

  1. 在 Android 模拟器中运行当前代码。我发现在 Android 日志中显示我的一些依赖语法已被弃用(对我来说是 flutter_svg)
  2. 我已将flutter_svg版本的版本更改为^0.19.0。您需要修复运行日志中所有已弃用的语法。
  3. 现在尝试在 Android 模拟器中运行它对我有用。
  4. 尝试在 IOS 模拟器中运行。 (第一次它不起作用,所以我关闭 IDE 并再次重新打开并运行)在这种情况下,flutter clean 应该解决您的问题。

这适用于我的问题。

【讨论】:

    【解决方案3】:

    如果您之前在此处遵循 FlutterFire 步骤:https://firebase.flutter.dev/docs/overview#improve-ios-build-times,那么是时候禁用 Firestore 的预编译版本并让 Xcode 从头开始​​编译了。

    在文件ios/Podfile 中注释这一行:

    # pod 'FirebaseFirestore', :git => 'https://github.com/invertase/firestore-ios-sdk-frameworks.git', :tag => '6.26.0'
    

    运行您的应用,它现在应该可以工作了。

    【讨论】:

    • 在这种情况下无用且不相关。
    【解决方案4】:

    如果您想立即模拟它而不是一般地处理 IDE 问题,请转到工具 -> Flutter -> 在 Xcode 中打开 iOS 模块。但是对于进一步的解决方案,请执行 Flutter Clean,然后从 Xcode -> Window -> Devices and Simulators -> Simulators -> 右键单击​​您的 iOS 模拟器并单击删除。然后从您所在的同一设备和模拟器页面的左下角“+”按钮添加一个新模拟器。在颤振中重新运行您的应用程序,它应该可以工作。

    【讨论】:

      【解决方案5】:

      对我有用的是 4 个步骤的组合:

      第一步,修改Podfile

      # Uncomment this line to define a global platform for your project
      platform :ios, '12.1'
      

      并添加以下内容(iOS平台必须匹配):

      post_install do |installer|
        installer.pods_project.targets.each do |target|
          flutter_additional_ios_build_settings(target)
          target.build_configurations.each do |config|
            config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '12.1'
          end
        end
      end
      

      第二步,将Flutter频道切换为master并升级Flutter

      $ flutter channel master
      $ flutter upgrade
      

      第 3 步,升级依赖项

      $ flutter pub upgrade
      

      第 4 步,清理和构建

      $ flutter clean
      $ flutter build ios
      

      【讨论】:

        【解决方案6】:

        一位同事让我跑:

        flutter clean
        

        然后:

        flutter pub get
        

        之后它对我有用。

        【讨论】:

          【解决方案7】:

          我今天遇到了这个问题,我就是这样解决的:

          1. 运行flutter clean
          2. 重启系统
          3. 重启ios设备

          【讨论】:

          • 你认为“系统”是什么?
          猜你喜欢
          • 2022-07-19
          • 1970-01-01
          • 2021-05-05
          • 2021-09-19
          • 2021-01-21
          • 2021-08-02
          • 2010-11-03
          • 2020-11-10
          • 2023-02-12
          相关资源
          最近更新 更多