Men的博客

欢迎光临!

0%

Swift编写framework

前段时间,公司比较清闲,没啥事做的我,想着总要搞点东西,也不能好高骛远,所以就拿以前一个简单的项目做了一下练兵,以前要求写一个搜索的框架,然后就模仿着高德的搜索SDK进行了编写,不知道高德内部代码是什么样子的,但是,外部的接口还是尽量跟高德表现的比较一致了,既然oc能写,那么为什么不用swift试试呢?于是,我差不多用了一个星期的时间,将一套swift版本的framework编写完成,总算是也没白瞎了这些天的时间,下面来分析下swift版本的SDK开发过程吧
一开始的时候,我完全按照oc版本的接口进行了定义,API类,delegate啦,等等写了一堆,然后进行实现,然后觉得越写越麻烦。为什么不能向AFN那样直接用block形式进行回调呢?于是这个版本就这么快的修改了
一开始我的类基本上是API,OBj文件,然后request类进行参数拼接,API类进行请求,设置代理,response类进行数据解析,通过代理回调。
后来,直接变成 OBj文件,直接就是request类拼参数,发起请求,response类解析,通过block回调,瞬间感觉代码整洁很多,而且使用接口的时候也特别简单了。
其实最大一个问题是,我不知道怎么使用md5加密,用swift3尝试了好久都得不到结果,最后没有办法,只能用oc的类混编了,如果以后有能力的话,我想最好还是改成用swift
分享一下接口调用情况
/// 实例化请求类
let request = InputTipsSearchRequest()
request.center = LatLon(latitude:39.998623 , longitude: 116.473228)
request.keywords = “北京”
request.city = “北京”
/// 发起请求
request.inputSearchRequest({ (response) in
/// block回调
print(“请求成功”)
}) { (error) in
print(error.localizedDescription)
}