以Web Server的方式分享本地文件

偶尔会需要将本地文件临时分享给其他人,建个 FTP 显得有点小题大作,而 Web Server 会是更方便且轻量级的方案。 几乎所有 Linux 发行版本和 macOS 都自带了 Python 运行环境,通过简单的一条命令就可以开一个 Web Ser...

Linux

最简单的方式为UITableView添加empty view

在 UITableView 或 UICollectionView 列表数据为空时,我们一般会显示一些提示信息,姑且称它为 Empty View,这已经是很通用的做法了,但其实并没有通用的实现方式,至少 Apple 没有提供。在以前的项目中,我都是使用...

iOS

以Closure的方式优雅地为UIControl addTarget

习惯了ES6的闭包,回到Swift下发现为UIButton手动添加一个点击事件,实在是太ugly,你得先定义一个方法(selector),然后用OC时代的方式去call,最不方便的是传参数,尤其是你想使用本地变量的时候。 研究了一下,实现了以Clos...

iOS

React Native版本号管理

经过近两个月的学习和开发,第一个用React Native开发的App已经上线了,一次搞定两个端的感觉真好,我以后自己的项目应该会首选React Native来做了。其实还有一个让我比较难受的是版本号不好管理,在package.json里有一个js版...

React Native

React Native的国际化

最近在玩React Native,一套代码在多个平台使用确实很爽,而当App做大以后国际化是不可避免的一个问题。趁着元旦假期有空研究了一下,虽然没有Android(不是iOS)上那么方便,但也不算太麻烦。 I18n这里需要使用一个第三方库react-...

React Native

2017年终回顾

今天朋友圈被『18岁的照片』刷屏,原来最小的90后(1999-12-30)都18岁了,也在提醒我而立的第一年已经结束,有必要回望一下过去的2017年了。 下图是同学发在朋友圈,我们18岁时的照片,里面同时出现了我和我媳妇儿:) 生活生活似乎一成不...

技术之外

将iOS付费App转换成免费加内购模式的最佳实践

前段时间上线我的第一个收费App——瓦工助手,虽然有下载,但一天一两个的下载量实在是有点太少。于是打算把付费下载改成付费加应用内购买的模式,看看下载量和收益是否有提升。下面记录一下将收费改成免费加内购的最佳实现方式。 因为是之前是付费下载的,让已购买...

iOS

程序员的视角看老家发展

趁着国庆长假回了趟老家,感觉已经很久没有在非春节回过家了,虽然老家还是挺落后,但一些发展的迹象还是很有意思。 在八线小县城,移动支付的普及率还比较低,而相比深圳常见的摆出微信支付和支付宝两个二维码让你扫,在这里几乎看不到支付宝。 汽车在十六线农村的...

杂谈

iOS开发的那些坑(五)

今天收到一个瓦工助手用户的反馈,说磁盘和流量的数据显示不正确,刚开始还挺奇怪的,因为App上线这么久还没听说过有这样的问题,直到他截图发过来,看到数字是负数,才意识到可能是数字溢出了。 跟踪了一下代码,发现我对磁盘空间和流量统计里用的都是Int(因...

iOS

从Multibit HD Wallet获取免费的BCC

2017年8月1日,从比特币fork出来一个新币种——比特币现金(BCC),因为是fork,所以BCC的blockchain里包含了拆分前所有记录,换句话说,如果你原来有比特币,将同时拥有等额的BCC! BCC上线不到一个月,已经涨到了¥5000左右...

比特币