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 编写的外部框架 的相关文章

  • 我可以通过什么方式混合 jQuery 和 vanilla JavaScript

    我有一个用普通 JavaScript 编写的 Web 应用程序 我想用 jQuery 动画来增强它 并使用我在各种 jQuery 插件中找到的一些功能 例如上传 http www uploadify com 可以通过什么方式将 jQuery
  • Xcode 6 Beta iOS 8 模拟器无法访问互联网

    刚刚安装了 XCode 6 Beta 来测试我的应用程序 iOS 8 模拟器运行并且我的应用程序成功安装 但模拟器无法访问互联网 我尝试使用 Safari 或地图 但没有网络连接 如果我从 XCode 6 运行 iOS 7 模拟器 它可以完
  • 如何将JS/CSS文件包含到Slim框架的模板中?

    我正在使用 Slim 框架开发一个简单的网络应用程序 我遇到了一个可能很简单的问题 我想将静态文件 CSS 和 Javascript 包含到我的模板中 我的项目文件夹结构如下 index php lt where all the routi
  • AlamofireObjectMapper 更新到 swift 3 时不支持 ios8?

    我尝试将我的项目更新到 Swift 3 我的项目也支持 ios8 在尝试更新 cocoapods 时 我遇到 AlamofireObjectMapper 需要更高部署目标的问题 更改为 ios9 后 pod 安装没有任何错误 但我仍然想支持
  • 在 Slim Framework 3 中访问课堂上的应用程序

    当路由位于与 index php 不同的类中时 我无法理解如何访问 Slim 的实例 当使用 Slim Framework 2 时 我总是使用以下内容 但它在 Slim 3 中不起作用 this gt app Slim Slim getIn
  • 使用 Xcode 6 XLIFF 导出的 iOS 本地化/国际化设置 Bungle

    背景 Xcode 6 添加了快速导出功能 可为每种语言创建单个 XLIFF 文件 只需从文件导航器中选择您的项目 然后选择菜单项编辑器 导出以进行本地化 Issue 它工作得非常好 并且 XML 中包含了所有内容 除了设置捆绑字符串 有人有
  • 使用 ios 8 和 Xcode 6.0.1 删除临时配置文件

    我似乎无法使用 iOS 8 常规设置删除设备上的临时配置文件 因为配置文件选择已消失 Xcode 6 0 1 也不允许删除临时配置文件 有人知道如何在运行 iOS 8 和 Xcode 6 0 1 的设备上删除临时配置文件吗 它在 Xcode
  • 网络扩展 - NEVPNManager

    苹果在 iOS 8 中发布了一个新的框架 NetworkExtension 我想使用 NEVPNManager 从应用程序启动 VPN 连接 或者此框架还有其他用途吗 有人有关于这个框架的信息或例子吗 我在developer apple c
  • 检测 UICollectionView 中的页面更改

    我尝试寻找这个问题一段时间 但找不到这个问题的答案 我的问题是我有一个UICollectionView滚动方向是Horizontal with Paging Enabled 我的问题是我想保留用户所在的当前页码 所以我创建了一个int变量
  • 如何将 C++ 代码“制作”为 xcode 的库

    为了澄清澄清 我知道如何使用 obj c 或 swift 在 Xcode 中创建库 我知道如何在项目中使用这些 我知道如何编译这些项目 以便一切正常 我不知道的是如何获取开源 C 源代码 呵呵 并将其构建 制作 编译到库中 只是为了澄清以下
  • 在XCode中快速查看Swift变量的类型

    有没有什么快捷方式可以让我在 XCode 中快速查看 Swift 中任何变量的类型 Alt 单击返回 无快速帮助 类型推断非常棒 但是如果没有这些工具 生活就会变得困难 Either use Alt click to display the
  • Xcode 未创建 .h 文件

    我使用的是 Xcode 6 0 1 我创建了一个自动生成 h 和 m 文件的新项目 当我尝试添加新的 Objective C 文件时 它仅创建 m 文件 h 文件未生成 我尝试了所有首选项 但没有找到一个显示 生成 h 文件 的选项 出于好
  • showViewController:sender 的相反编程方式是什么:

    我正在编写一个仅限 iOS 8 的应用程序 并且我正在使用新的自适应演示文稿 结合使用 显示 和 显示详细信息 segue 以及showViewController sender and showDetailViewController s
  • CloudKit 通过 cron 作业发送推送通知?

    我正在创建一个大学餐饮菜单应用程序 在其中我需要根据每日菜单发送推送通知 最初 我计划通过 Heroku 将用户数据存储在数据库中 并使用 cron 作业将数据库中的数据与每日菜单进行比较 并向用户发送适当的通知 然而 在 Cloudkit
  • 如何使用 Swift 使用 TouchID?

    Apple 为 iOS 8 的 TouchID 实现提供的文档采用 Objective C 语言 有 Swift 版本吗 Objective C IBAction touchIDAvailable UIButton touchIDAvail
  • 什么是 WKWebView 中的 WKErrorDomain 错误 4

    fatal error LPWebView encounters an error Error Domain WKErrorDomain Code 4 A JavaScript exception occurred UserInfo 0x7
  • 使用数组中的字符串淡入/淡出标签

    func setOverlayTitle self overlayLogo text Welcome var hello String Bon Jour GUTEN nMORGEN BONJOUR HOLA BUENOS D AS BUON
  • Play框架运行应用程序问题

    每当我尝试运行使用以下命令创建的新 Web 应用程序时 我都会收到以下错误Play http www playframework org Error occurred during initialization of VM Could no
  • 设计同时支持 iOS 8 和 iOS 7 的应用程序

    假设我想设计一个主从应用程序 Xcode6通用应用程序的主从项目模板包括UISplitViewController 而splitViewController是iOS8中的新功能 我也想支持iOS7的应用程序 一般来说 使用 Xcode 设计
  • 在 Swift 中对约束进行动画处理

    我有一个UITextField我想在点击时放大它的宽度 我设置了约束 并确保左侧约束的优先级低于我尝试在右侧设置动画的约束 这是我尝试使用的代码 move the input box UIView animateWithDuration 1

随机推荐

  • 函数式编程:副作用

    大多数教程 文章 书籍都会讨论函数式编程时的副作用 采取这个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