Nic*_*ela 137 xcode ios flutter
我刚刚升级到 Xcode 13.3-beta,运行 flutter 项目出现此错误:
\nError output from Xcode build:\n\xe2\x86\xb3\n 2022-03-02 17:45:38.148 xcodebuild[62848:6695836] Requested but did not find extension point with identifier\n Xcode.IDEKit.ExtensionSentinelHostApplications for extension Xcode.DebuggerFoundation.AppExtensionHosts.watchOS of plug-in\n com.apple.dt.IDEWatchSupportCore\n 2022-03-02 17:45:38.148 xcodebuild[62848:6695836] Requested but did not find extension point with identifier\n Xcode.IDEKit.ExtensionPointIdentifierToBundleIdentifier for extension Xcode.DebuggerFoundation.AppExtensionToBundleIdentifierMap.watchOS of\n plug-in com.apple.dt.IDEWatchSupportCore\n ** BUILD FAILED **\nRun Code Online (Sandbox Code Playgroud)\n现在,我很困惑,我正在模拟器上运行 iOS 应用程序,为什么会出现像 watchOS 这样的错误?
\n我完全不知道如何解决这个错误。
\n有人可以帮助我吗?
\nPho*_*per 70
好吧,很奇怪,但多次运行 xcrun 似乎可以解决这个问题。我最近也更新到了 Xcode 13.3。
xcrun -sdk iphoneos --show-sdk-path
Run Code Online (Sandbox Code Playgroud)
第一次它显示错误。第二次它显示正确答案。我用所有三个 sdks、iphoneos、macosx、watchos 运行它,并且第一次都显示错误。我还使用所有三个 sdk 的所有五个选项运行它:
xcrun -sdk iphoneos --show-sdk-path
xcrun -sdk iphoneos --show-sdk-version
xcrun -sdk iphoneos --show-sdk-build-version
xcrun -sdk iphoneos --show-sdk-platform-path
xcrun -sdk iphoneos --show-sdk-platform-version
Run Code Online (Sandbox Code Playgroud)
之后 xcodebuild 的构建错误就消失了,尽管我不确定哪个命令修复了它。
use*_*606 29
通过运行修复了这个问题。
xcrun -sdk macosx --show-sdk-path
Run Code Online (Sandbox Code Playgroud)
这会输出您当前的 skd 路径。
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk
Run Code Online (Sandbox Code Playgroud)
将其添加到您的 .zshrc 文件中。
export SDKROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX12.3.sdk
Run Code Online (Sandbox Code Playgroud)
来源它
source ~/.zshrc
Run Code Online (Sandbox Code Playgroud)
现在运行
xcrun -sdk macosx --show-sdk-version
Run Code Online (Sandbox Code Playgroud)
小智 24
为了避免对版本进行硬编码,您可以将其添加到您的 .profile 中:
export SDKROOT=$(xcrun -sdk macosx --show-sdk-path)
Run Code Online (Sandbox Code Playgroud)
重新加载配置文件(您的配置文件的源路径)并运行
xcrun -sdk macosx --show-sdk-version
Run Code Online (Sandbox Code Playgroud)
核实
小智 14
如果它是一个 flutter 项目,以下步骤可能会有所帮助:
flutter pub upgrade,flutter pub get在项目文件夹中cd ios, pod repo update,pod installtua*_*ptn 10
这是 xcode 的问题,当 xcode select 不与 CommandLineTools 链接时,在命令下面运行以链接它
// reset to the default command line tools path
xcode-select -r
// Link xcode-select with CommandLineTools
sudo xcode-select -s /Library/Developer/CommandLineTools
Run Code Online (Sandbox Code Playgroud)
如果那不起作用。也许钥匙串的问题不是解锁。
你需要通过以下方式解锁
security unlock-keychain
Run Code Online (Sandbox Code Playgroud)
或者用密码
security unlock-keychain -p <password>
Run Code Online (Sandbox Code Playgroud)
希望这个方法可以帮到你,谢谢。
令人遗憾的是,XCode 13.3 存在这个问题。
这个答案指出了这一点 - Stackoverflow Answer- Flutter for iOS run, build but not archive
给出的三个解决方案是
修改代码
降级到 Xcode 13.2.1
等待Apple修改Xcode
对于我自己来说,我使用 CodeMagic,并且没有降级我的 Archive 的奢侈。XCode 可能需要几个月的时间来更新。所以修改代码是唯一的选择。我发现这个问题于 2022 年 3 月 15 日打开。最终有这个解决方案。
打开 Podfile 并粘贴 pod 'DKImagePickerController/PhotoGallery', :git => 'https://github.com/miguelpruivo/DKImagePickerController.git' ,如下所示:
`target 'Runner' do
use_frameworks!
use_modular_headers!
#Workaround for segmentation fault:11 while archiving
#Add the below line
pod 'DKImagePickerController/PhotoGallery', :git => 'https://github.com/miguelpruivo/DKImagePickerController.git'
flutter_install_all_ios_pods File.dirname(File.realpath(FILE))
end`
Run Code Online (Sandbox Code Playgroud)
是的,我知道你的错误,说你的错误是通过 WatchOS 造成的。但据我了解,这是 Xcode 13.3 版本中出现的问题。在 Xcode 13.3 中,如果您有使用 UI_USER_INTERFACE_IDIOM() 的代码,则在运行 Archive 时将收到“内存不足”错误。将“UI_USER_INTERFACE_IDIOM()”更改为“UIDevice.current.userInterfaceIdiom”可以解决该错误。使用 DKImagePickerController/PhotoGallery 的 flutter pod 通常会出现此问题。
我能够在不接触任何与手表相关的东西的情况下解决这个问题。除此之外,我确保我的 flutter 项目的最低支持级别为 12,但这可能完全不相关。
最终降级可能是解决方案。如果有人对深入研究感到好奇,我的许多链接也会带来其他解决方案。
小智 6
文件有错误/Applications/Xcode.app/Contents/Developer/Platforms/WatchOS.platform/Developer/Library/Xcode/PrivatePlugIns/IDEWatchSupportCore.ideplugin/Contents/Resources/IDEWatchSupportCore.xcplugindata
您应该对其进行备份,然后在 plist 编辑器中将其打开并完全删除以下项目:
检查 Xcode 是否有更新。
xcode-select --install
Run Code Online (Sandbox Code Playgroud)
如果您从上面的命令中收到以下消息,请尝试:
xcode-select:错误:命令行工具已安装,请使用“软件更新”安装更新
sudo rm -rf /Library/Developer/CommandLineTools
xcode-select --install
Run Code Online (Sandbox Code Playgroud)
另外,您应该检查是否有可用的 macOS 更新。
单击左上角的 Apple 图标 > 关于本机 > 软件更新(例如 macOS Monterey 12.3)
小智 3
就我而言,它的 React Native 应用程序,问题出在可可豆荚上。重新安装 Pod 有帮助。在您的项目文件夹下面运行
rm -rf ios/Pods && npx pod-install
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
97872 次 |
| 最近记录: |