相信大家都熟悉OC使用FMDB第三方库,进行数据库操作,增、删、改、查,但最近在Swift 3中使用FMDB遇到了一些问题,下面这篇文章主要给大家介绍了关于在Swift 3中使用FMDB遇到的问题与解决方法,需要的朋友可以参考下。
本文主要给大家介绍了关于在Swift 3中使用FMDB遇到的问题与解决方法,分享出来供大家参考学习,下面来一起看看详细的介绍:
状况
OC项目转Swift,打算继续使用FMDB。Cocoapods进来后,在桥接文件 "XXX-Bridging-Header.h" 中写入#import "FMDB.h"。
编译报错,如下图所示。
Cocoapods Podfile
platform :ios, '10.0'
use_frameworks!
targetsArray = ['HelloSwift']
targetsArray.each do |t|
target t do
pod 'FMDB/SQLCipher'
pod 'Alamofire'
end
end
inhibit_all_warnings!
原因
究其原因,发现是因为在Podfile用了use_frameworks!导致的。之前OC的项目没有加这个属性。
在Cocoapods 里使用use_frameworks!的话,是通过frameworks这个方式来管理pod的代码。不配置的话,则采用static libraries方式来管理。这也是之前OC项目里的方式,在需要调用的地方直接 #import "FMDB.h"即可。
解决方法
在桥接文件 "XXX-Bridging-Header.h" 中的引用方式改变成#import <FMDB/FMDB.h>
在需要调用的类里加上import FMDB
,编译成功。
示例代码
之前Cocoapods用static libraries方式的话是不需要在类里import FMDB的。但如果采用use_frameworks!属性的话,调用时不引用会报如下错误。
参考资料
在xcode 6.4 中使用swift和object-c混合编程,同时通过cocoapods进行管理的一些问题和解决办法](http://blog.csdn.net/remote_roamer/article/details/47835347)
cocoapods use_frameworks的问题
Swift and Objective-C in the Same Project
总结
以上就是这篇文章的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对编程学习网的支持。
本文标题为:Swift 3中使用FMDB遇到的问题与解决方法


基础教程推荐
- Swift中重写和重载的使用与对比总结 2023-07-05
- ruby-on-rails-为使用Rails 4,nginx和乘客的用户设置自定义域 2023-09-21
- R语言 ggplot2改变柱状图的顺序操作 2022-11-17
- R语言-修改(替换)因子变量的元素操作 2022-11-26
- ruby on rails validates 2023-09-22
- 浅析ELF转二进制允许把 Binary 文件加载到任意位置 2023-07-06
- Ruby3多线程并行Ractor使用方法详解 2023-07-23
- Swift初始化器与可选链的使用方法介绍 2023-07-08
- R语言绘制折线图实例分析 2022-11-21
- win10下使用virtualbox + vagrant配置ruby开发机环境 2023-07-23