如何使用 Xcode 10 而不是 swift 添加 CoreLocation 框架?

Posted

技术标签:

【中文标题】如何使用 Xcode 10 而不是 swift 添加 CoreLocation 框架?【英文标题】:How do I add the CoreLocation framework using Xcode 10 and not swift? 【发布时间】:2019-11-26 16:31:08 【问题描述】:

我正在尝试将 CoreLocation 添加到我的应用中。

我已包含#import

使用构建设置中打包部分下的“框架版本”A。我尝试通过在另一个线程下根据建议输入 $BUILT_Products_dir/B.framework/B 在“其他图书馆员标志”(链接部分)下添加框架 B。

我在构建时不断收到以下错误

    Undefined symbols for architecture x86_64:
  "_OBJC_CLASS_$_CLLocationManager", referenced from:
      objc-class-ref in ViewController.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

这个框架还有其他的链接需要在哪里做吗?

【问题讨论】:

您希望能够在您的应用中使用CoreLocation,但又不想使用 Swift 来导入它? 我的意思是我使用的是objective-c而不是swift。 您可以像在 Swift 中一样在 Ob-C 中导入 ios 框架,例如 CoreLocation。例如:***.com/questions/16511350/… 【参考方案1】:

谢谢。我遵循了一些不好的建议,将 CoreLocation 框架手动包含到项目中。我删除了它并在应用程序目标链接二进制文件中使用了构建阶段到库。它现在工作正常。

【讨论】:

以上是关于如何使用 Xcode 10 而不是 swift 添加 CoreLocation 框架?的主要内容,如果未能解决你的问题,请参考以下文章

Xcode 中使用较低 4.0.3 版本而不是 5.0.1 的 Swift 构建设置未强制执行

如何在 Swift 5 中以编程方式在特定屏幕(即主显示器而不是外部显示器)上显示窗口? [苹果系统; Xcode 15]

Xcode6/Swift - 如何在多个视图控制器中实现 iAdBannerView?

将版本更改为 Swift 1.2 而不是 Swift 2.1

升级到 XCode 6.3.2 后核心数据模型找不到自动生成的实体类(使用 Objective-C 而不是 Swift)

Xcode 7 中的 XCTest:如何验证视图中是不是存在某些文本