![](/img/trans.png)
[英]XCode fails to build WHEN device is not plugged in - ld: framework not found
[英]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
来工作,如果您的代码库中没有移动广告 SDK , UserMessagingPlatform
就会丢失,您的应用程序实际上是在请求不存在的代码。 要解决这个问题,您必须告诉 cocoapods(一个依赖项管理器,认为 npm 但对于 Swift/Objective-C)定位并添加缺少的代码到您的项目中。
首先,如果你还没有安装 cocoapods。 我使用 Homebrew 来做到这一点,因为它似乎是唯一没有头疼的方法。 很多人已经有 Homebrew,但如果你没有,先安装它,然后运行: brew install cocoapods
接下来,使用终端进入您的项目目录。 进入目录后,运行: pod install --repo-update
在 Xcode 中重新打开您的项目,它现在应该可以成功编译。
跳过您的环境不需要的任何步骤。
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
brew install cocoapods
cd /path/to/your/project
pod install --repo-update
免责声明:我不是 Swift 或 Objective-C 开发人员,我对 Apple/Xcode 的经验有限。 我也不熟悉“cocoapods”和 AdMob。 我刚刚下载了示例代码并解决了这个问题,直到我成功编译它。
你在你的 XCode 项目中使用 Cocoapods 吗?
这个 stackoverflow 答案建议更新 cocoapods
尝试更新 cocoapods:
sudo gem install cocoapods
.xcframework
文件只能在 CocoaPods 1.10.0 或更高版本上使用,在您使用 1.8.4 的示例应用程序中。
将 CocoaPods 更新为最新版本并再次运行pod install
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.