历史文章列表:1、《壹句》正式上线
2、 Apple App Store发布流程以及所遇到的一些坑
前言:
2016.10.17-2017.01.12,在辞掉工作,然后再去台湾骑行一周后的3个月内,个人开发产品《壹句》在Apple Store正式上线,本专题记录《壹句》开发的历程,中间所遇到的问题以及解决方法、心得等等,对过去三个月的时间进行一个总结。
简单介绍下我自己,理工男,硕士,坐标上海,做了两年半的金融,觉得每天重复的工作,没有成就感,又想自己做点啥,怕以后会有遗憾,遂离职,开始了《壹句》的开发,之前没有开发经验,有自学过Swift。
正文:
本文主要介绍下《壹句》前端主要使用的Swift第三方库,以及使用的过程及效果简介。
如下图所示,是《壹句》所使用的全部第三方库。基本都pp开发中使用频率非常高的几个库。
1、snapKit
这是一个界面自适应的库,因为我的整个壹句App界面都是纯代码的,不含任何Storyboard制作的界面。想要实现界面的自适应,这个库就显得非常重要了,特别是我还在ipad中实现了旋转的自适应。
使用方式很简单:
四个方向的相对关系确定好,就可以了,使用好了,基本上可以实现,你想怎样排布都没问题。
2、ObjectMapper、SwiftJson、Alamofire
这三个库的联合使用,可以实现网络访问获取Json格式返回,然后Mapper到定义的Object。
如我其中一个Model的定义:
可以任意的添加model中的字段,对于后续Model字段的扩展,非常的方便。
如再加一个NSCoding进行加码/解码存档,将实现一个全自动的网络获取数据-mapper数据-保存数据的全过程。
如下图所示:
3、Kingfisher
这是一个好用的图片缓存库,简单实用的话特别简单:
自动查看是否有缓存,默认缓存保存时间是24小时,也可进行修改,如下图所示:
设置缓存的最大空间,缓存时间等。
4、AliyunOssiOS:这个是使用阿里云的OSS保存对象使用的库。
5、Material:这个里面图标、颜色比较好(我主要为了方便使用颜色,它将颜色按light/darker分几个档次,这对于我这种颜色不敏感的人来说,是非常方便的。)
6、Eureka:这个是方便的使用表单,我主要使用在“设置”页面,确实非常方便,但是不太习惯。如下图:
添加了如图所示的“我评论的”这一单元行。
7、keychainAccess
私密的数据不能保存在plist中,这里就用到了keychainAccess,用它来保存点token、phone啥的,也是用起来很方便的,据说,只要手机没有越狱,这个是不可破解的,不像plist,随便就能打开。
8、ESPullToRefresh
下拉刷新、上拉加载,一直没有找到合适的刷新第三方(基于Swift的),又没有时间和精力去自己开发一个,最后选择了个,用起来还算不错啦。
9、MonkeyKing
第三方分享,微信、微博分享,用这个比较方便。
看我的微信分享,还算不错吧。
10、EZSwiftExtensions:
这个库用处挺大的,虽然我一直没怎么管,都是在不知不觉中使用到。(我实在分不清楚哪些是Swift原生的,哪些是库扩展来的,不熟惹得祸)。
像Date()的扩展,我稍微改下:
就是一个根据比较方便的与当前时间比较,生成过去多长时间的函数,特别的方便。
11、Popover
原谅我,这个使用度确实不高,可忽略,我只用在了生成下图中的那个下拉框中。
12、CryptToSwift
这是一个加密库,我用来给传输的参数进行加密,还有就是验证的加密,像我的后端的每一个链接,都是进行了加密处理的,也是为了安全起见。不进行复杂情况的使用还是很简单的。
如下就是一个简单的AES加密的例子,设置秘钥key,初始因子iv,算法模式blockMode,补码方式padding即可。
以上就是我的《壹句》所使用的全部第三方库。
最后,打个我的《壹句》App的广告:
壹句的Itunes地址为:https://itunes.apple.com/us/app/yi-ju/id1189535187?l=zh&ls=1&mt=8,有兴趣的同学可以下载使用,多提意见。
壹句网站的地址为:www.91yiju.com。