繁体   English   中英

使用 Google UMP SDK 构建 Xcode 失败并显示“未找到框架”

[英]Xcode build with Google UMP SDK fails with 'framework not found'

我们使用 Cordova 和 AdMob 制作中间件来展示广告。 Cordova 为我们生成了一个 Xcode 项目。 但是,生成的 Xcode 项目现在无法构建,并出现错误ld: framework not found UserMessagingPlatform.xcframework

这似乎是由Google UMP SDK更新到版本 1.3.0 引起的,其中注明“将 SDK 从 .framework 更新为 .xcframework”。 我已经联系了 AdMob 支持,他们声称构建对他们有用,但没有提供任何有用的帮助。

我不知道为什么我们的构建现在失败了,我不知道该怎么做。 这是一个示例 Xcode 项目: https : //www.dropbox.com/s/y1ly2c3yi45rop6/TestBuild.ios.project.zip? dl =0

任何人都可以确定这个 Xcode 项目出了什么问题导致它无法构建,并确定解决方法吗?

问题

问题似乎是框架/依赖项未添加到 Xcode 项目,因此它没有编译应用程序所需的代码 AdMob 依赖于UserMessagingPlatform来工作,如果您的代码库中没有移动广告 SDKUserMessagingPlatform就会丢失,您的应用程序实际上是在请求不存在的代码。 要解决这个问题,您必须告诉 cocoapods(一个依赖项管理器,认为 npm 但对于 Swift/Objective-C)定位并添加缺少的代码到您的项目中。

首先,如果你还没有安装 cocoapods。 我使用 Homebrew 来做到这一点,因为它似乎是唯一没有头疼的方法。 很多人已经有 Homebrew,但如果你没有,先安装它,然后运行: brew install cocoapods

接下来,使用终端进入您的项目目录。 进入目录后,运行: pod install --repo-update

在 Xcode 中重新打开您的项目,它现在应该可以成功编译。

分步解决:

跳过您的环境不需要的任何步骤。

  1. 安装Homebrew : /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
  2. 安装cocoapods : brew install cocoapods
  3. 打开终端,导航到您的项目目录: cd /path/to/your/project
  4. 更新依赖项: pod install --repo-update

免责声明:我不是 Swift 或 Objective-C 开发人员,我对 Apple/Xcode 的经验有限。 我也不熟悉“cocoapods”和 AdMob。 我刚刚下载了示例代码并解决了这个问题,直到我成功编译它。

你在你的 XCode 项目中使用 Cocoapods 吗?

这个 stackoverflow 答案建议更新 cocoapods

尝试更新 cocoapods:

sudo gem install cocoapods

Cocoapods 更新日志包含 XCFrameworks 的修复

.xcframework文件只能在 CocoaPods 1.10.0 或更高版本上使用,在您使用 1.8.4 的示例应用程序中。

将 CocoaPods 更新为最新版本并再次运行pod install

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM