iOS8:自定义 Swift 框架访问用 Objective-C 编写的外部框架

2023-11-28

我正在尝试创建一个名为的自定义框架CouchbaseKit(Xcode 中的新目标)在 Swift 中。在我的里面CouchbaseKit,我需要访问CouchBaseLite Framework这完全写在Obj-C。我在用着Cocoapods管理CouchBaseLite以及其他一些框架。下面是我的 podfile。

Podfile

# Uncomment this line to define a global platform for your project
link_with ['CouchbaseKit']
# platform :ios, '8.0'

use_frameworks!
target 'CouchbaseDB' do
link_with ['CouchbaseKit']

pod 'couchbase-lite-ios'
pod 'SwiftyJSON', '~> 2.2.0'
pod 'Alamofire', '~> 1.2'
pod 'XCGLogger', '~> 2.0'
end

target 'CouchbaseDBTests' do
end

target 'CouchbaseKit' do
end

target 'CouchbaseKitTests' do
end

项目内的 Pod:

enter image description here

For my TARGETS我在构建阶段有以下设置。

定义模块 Yes

允许框架模块中包含非模块化内容 Yes

Problem:当我尝试访问 CouchbaseKit(我的自定义框架)内的 CouchbaseLite 框架时,出现错误:“不存在这样的模块‘CouchbaseLite’。

enter image description here

Tried:

  1. 由于该项目是用 Swift 编写的,我创建了一个 Objective-C 文件并点击“yes”您想配置 Objective-C 桥接头吗?"

  2. Even though Allow Non-modular Includes in Framework Modules is set to YES in all targets, I still get an error when I try to #import <CouchbaseLite/CouchbaseLite.h> in CouchbaseKit.h enter image description here

这是我的自定义框架的构建阶段CouchbaseKit

enter image description here

问题:如何在我的自定义 Swift 框架中查看外部 Objective-C 框架 (CouchasebaseLite)?


iOS 上的 CouchbaseLite 是一个静态框架,即它的二进制文件是一个静态库而不是 dylib。这意味着它会像源文件一样链接到您的应用程序中。因此你不使用import在 Swift 中访问它;这些类已经与您的应用程序的类位于同一名称空间中。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

iOS8:自定义 Swift 框架访问用 Objective-C 编写的外部框架 的相关文章

随机推荐

  • 函数式编程:副作用

    大多数教程 文章 书籍都会讨论函数式编程时的副作用 采取这个Python代码 def isPrime n k 2 while k lt n if n k 0 return False k 1 return True 文中说上面的函数有局部副
  • 为什么CALL会在这个脚本中打印GOTO帮助消息?为什么之后的命令会执行两次?

    这是一个有趣的话题 我尝试着研究那里讨论的两件事 您可以通过双扩展访问带有特殊符号的标签 标签包含 无法使用 因为GOTO and CALL打印他们的帮助消息而不是执行 结果如下 echo off setlocal enableDelaye
  • 参数和参数之间的区别[重复]

    这个问题在这里已经有答案了 参数 和 参数 之间有区别吗 或者它们只是同义词 论证通常用于以下含义 实际论证 vs 形式参数 The 形式参数是函数声明 定义 原型中给出的内容 而实际论证是调用函数时传递的内容 如果您愿意的话 可以是形式参
  • epoll 是否保留 fd 的注册顺序?

    我正在研究 Linux 系统调用 我发现了一些方面epoll 我不清楚 说 我创建一个epoll实例 epollfd epoll create 50 接下来 我在中注册 50 个文件描述符for loop for i 0 i lt 50 i
  • Flex:防止滚动条自动显示时覆盖内容

    我在Flex中有一个画布 只能在垂直方向滚动 所以我将画布的属性设置如下 verticalScrollPolicy auto horizontalScrollPolicy off 这里的问题是垂直滚动条在出现时覆盖了内容 尽管还有足够的水平
  • AJAX 和 NS_ERROR_DOM_BAD_URI 错误

    我一直遇到以下问题 我认为这可能是由于我的方法可能被误导 但希望在您的帮助下我可以解决这个问题 基本上 对于我的网站 我有一个搜索提供商 已付费 所以我没有违反任何使用条款 提交搜索表单后 我将被定向到显示结果的域 虽然我可以自定义返回结果
  • JQuery Ajax 调用给出 404 'Resource Not Found' 错误,但正常的 URL 调用没问题

    在 ASP NET MVC 项目中使用 JQuery 调用时 我遇到了一个奇怪的问题 我发现 Ajax 调用给出 404 资源未找到错误 但是当我使用通常的 URL GET 调用时 我可以成功调用服务器 没有任何问题 知道为什么会这样吗 这
  • Java-获取当前计算机的声音输出

    有没有办法从计算机的默认音频输出中获取声音 我不想操纵它 我只想对频率进行视觉表示 很像均衡器 这个问题是重复的 实时音频可视化 Java java 声音 API 允许您与当前的音频输出进行交互 您可以在这里找到参考 http www ja
  • 无法在多风格应用程序中构建功能模块

    我在 Android Studio 3 1 1 上使用 Gradle 4 4 和 Gradle Android 插件 3 1 1 我有 2 种风格 a 和 b 由于以下错误 我无法构建我的项目 Cannot choose between t
  • 使用 DRF ModelViewSet 和 TemplateHTMLRenderer 时如何访问模板中的数据?

    我有一个 Django Rest 框架ModelViewSet我正在尝试使用TemplateHTMLRenderer显示 HTML 跟随在tutorial from rest framework import permissions ren
  • Python 3.4 的 HTML 解析器

    我有一些用 Python 2 7 编写的代码 它使用 HTMLParser 我目前使用的是Python 3 4 我找不到 HTMLParser 下载模块 如果存在的话 有人可以分享一下链接吗 如果没有 我该怎么办 您不需要安装 Python
  • 如何使用 Express 添加 MIME 类型

    我正在尝试让 Firefox 播放视频标签 通常 我会将其添加到 Apache 上的 htaccess 文件中 AddType video ogg ogv AddType video mp4 mp4 AddType video webm w
  • 解析转发的电子邮件

    我正在写一些代码parse转发的电子邮件 我不确定是否有一些 Python 库 一些我可以坚持使用的 RFC 或一些其他资源可以让我自动执行任务 准确地说 我不知道转发电子邮件的 布局 是否包含在某些标准或建议中 或者它是否只是多年来才发展
  • VBA公共数组:如何?

    所以今天的问题让我很生气 因为这应该很容易 但我找不到答案 如何在VBA中声明公共数组 我正在使用包含字母 A B C 的数组 因为我正在使用 Excel 单元格 并且我不想在我创建的每个函数中声明它 对吧 我尝试先在网上查看 我读到您必须
  • 何时使用正则表达式与内置字符串方法?

    我注意到关于何时使用正则表达式以及何时使用内置字符串函数 如 String Replace NET 的很多小争论 似乎很多人建议在处理字符串时总是 总是 总是使用正则表达式 除了显示它们之外 这真的是最佳实践还是只是我的错误印象 当问题只是
  • 将图像上传到特定的 Facebook 相册

    我可以使用 facebook graph api 通过将数据发布到来创建相册 http graph facebook com ALBUM ID albums 它返回一个 id 但不是专辑 id 我通过两种方式确认了 通过转到该专辑 援助与我
  • Kotlin verifyError:向后分支 90 上存在未初始化的对象

    我正在使用Kotlin 入门指南使用以下配置在 IntelliJ IDEA 上首次设置 Kotlin IntelliJ IDEA 2017 2 5 Build IC 172 4343 14 built on September 26 201
  • C++ 多重继承 - 为什么你不工作?

    我正在尝试找出一个有趣的多重继承问题 祖父母是一个具有多个方法的接口类 class A public virtual int foo 0 virtual int bar 0 然后是部分完成这个接口的抽象类 class B public A
  • 事件日志监听器 - 应用程序和服务

    有没有办法在生成 应用程序和服务 事件时监视它们 在 C 中 我发现我不能使用 WMI 还有其他想法吗 您可以订阅EventLog EntryWritten 事件 当条目写入本地计算机上的事件日志时发生 来自 MSDN EventLog m
  • iOS8:自定义 Swift 框架访问用 Objective-C 编写的外部框架

    我正在尝试创建一个名为的自定义框架CouchbaseKit Xcode 中的新目标 在 Swift 中 在我的里面CouchbaseKit 我需要访问CouchBaseLite Framework这完全写在Obj C 我在用着Cocoapo