嘿,大家好,我是不灭的小灯灯,我赌5毛你没听说过我的名字...
好啦,这篇不是鸡汤,是经验吐槽、干货分享!所以乱七八糟的就不多说了,直接切入正题。
先说下自己的情况背景,目前尚未毕业,非计算机专业,9年前爱上计算机编程开始自学,9年来什么技术都学过,但都吊儿郎当的没一门精通。另一方面,自己是个少数民族文化控,尤其热爱藏文化,我怕设计到什么敏感话题,就不多介绍了,总之几年来我也一直在做这方面的东西,直到15年年末,突然想做一款类似垂直社区的App,自己在睡梦中突发灵感,决定将App取名为《林卡》,在藏语简单可以理解为一起聚会的一种活动,并且在第二天就用PS完成了初步设计稿。
简单说下App的整体模块,3大板块:新闻阅读、类似微博的社区、增值内容。大家别喷我,这个构思确实毫无创新点,我承认我脑子笨。
由于这篇文章着重技术层面,我就不多从产品的角度讲了,App有没有价值之类的话题,我们就不提了。完成了整体构思,就得开始从技术上考虑下如何实现了。
首先,iOS和Android分开开发,不用WebApp,理由自然是体验太差。自己最近一直在做iOS,所以iOS采用OC开发,至于为什么不用Swift,可能纯粹是为了一些第三方库的适配问题吧,不想一句句改代码。然后Android端,虽然自己做过一些,但是经验不足,于是叫上了学安卓的老同学帮忙一起做,在这里再一次感谢他,没有要求任何回报就一起干。
说完客户端,再说服务端,自己只会最基本的PHP语法、增删查改SQL。理论上这样是可以解决了,但是效率、安全性,可想而知。没办法,我也只能硬着头皮做。服务端自然要有服务器,那就得买,再一次说明,这个项目纯粹是个人开发,没有企业背景,因此,没钱。考虑了实际用户量应该不多的情况下,购买了阿里云的弹性Web服务器,价格合理,空间和流量应该也能应付了。
计划完后,就开始着手开发了。那时候正值期末考试阶段,但是对于我来说,管他三七二十一呢,不复习了,全身心投入到iOS客户端的开发上去了,果不其然挂科了:)。iOS客户端的雏形似乎很顺利,首页的新闻阅读模仿了网易新闻的模式,顶部滑动分栏,文章有普通文章、图片展示两种形式,文章内容出于自己技术考虑,还是采用Webview来解析html代码显示,于是很快就完成了开发。
然后文章得加上评论系统,说到评论系统,那就得有用户系统。于是我一句句增删查改,硬是用原生的PHP写了一套api,我用脚趾头想一想都觉得效率差。为了给评论加上@名字点击,又废了好大劲,最后还是靠开源库TYAttributedLabel解决了。
文章阅读系统做完,我突然想起,怎么发文章呢?总不能一个个从数据库管理界面添加吧,那多不智能。于是就得有一套文章管理系统,没办法,写呗。
想自己用最简单的php来做,此时此刻才真正意识到力不从心,根本无从下手。于是百度搜啊搜,突然发现有个东西叫ThinkPHP,写这样的东西似乎很方便。再和老同学一商量,他也建议我用ThinkPHP来做,包括后台api。其实我是懒得去重写的,但是在看完慕课网、麦子学院的一些视频后,豁然开朗,相比原生语句,ThinkPHP简直是飞机和马车的区别。于是连续学习了几个日夜,基本理解了ThinkPHP的思路,然后重写了后台api,并且初步完成了文章管理系统。
至此,文章阅读差不多完成了。第二个部分,社区。
也就是类似微博的效果,理论上我也可以像文章阅读那样去做,但是想了下,这起码得做几个月啊。好在我之前就关注过一个sdk,友盟微社区,觉得它正好能达到我预期的效果。于是,嵌入了友盟微社区,效果还不错。其实这里面已经埋下了坑,我后面会讲到。
第三个板块,是增值服务,相当于常见的“发现”栏目,里面乱七八糟扔一些H5的东西,通过参数在线解析。既能实时更新,又能躲过苹果的审核。
最后,坑来了。我自己有一套用户系统,友盟社区又有一套,得把这两个系统无缝拼接起来才行。虽然友盟可以提供代码传递登陆功能,但是得让用户看起来这是一个完整的App,而不是两个!于是,一怒之下将友盟本来提供的用户内容全部隐藏,只留下社区页面,有关用户的全都采用我自己的系统。
这不是大坑,大坑是,当时用的sdk有bug,我想更换成新版的sdk,这时候才发现,妈呀,所有代码都得改,而且代码改得到处都是,甚至自己都不记得在哪里改过了,UI也得重新修改...相当于升级一次sdk,就等于重写一遍。这是个填不了的坑,于是,因为升级sdk,又一个礼拜浪费。
到了3月份,App的整体功能基本已经全部完成了,但是细节上、bug还有一大堆需要修改的地方。好在我们都是在OSChina上进行代码提交,版本控制得比较好,两个人的协作比较顺畅。
后面就是为运营做准备了,制作官网、制作分享页面、购买验证码、购买云储存空间、完善管理系统、购买域名、申请软件著作权、内部测试...一系列事情完成后,又是一个多月。
这里有几个经验和大家分享一下,由于没钱,分享页面是模仿头条的、验证码我们用的是Mob提供的免费验证码,媒体空间用的是七牛,域名、备案是从阿里买的,著作权是从版权家弄的。
最后最头疼的来了,上架iOS。安卓我们没有计划上架应用市场,原因我想大家都懂的,个人没法搞这些,国内市场都是变态。苹果的审核我早就见识过了,累计被拒绝了也有近百次了,什么理由都遇到过。最担心的还是版权。第一次提交,等了10天,审核竟然用了4天,平时都是几个小时的。4天后拒绝理由是让我去除H5内容,太简单了,隐藏不就行了,第二次提交又是10天,成功上架。然而,就在我从商店下载打开的时候发现,竟然有惊人的bug!欲哭无泪,自己太粗心了。
于是赶快修复,并且又和安卓商量,优化了一些功能,提交,因为预计要在5月份之前上架,再这样一次等10天肯定来不及。于是申请了加急,理由是有严重bug,苹果肯定会同意。第二天,就审核了,因为音乐播放问题,拒绝了,又提交,第三天,又拒绝了,再提交,又拒绝,第四天,终于通过了审核。
至此,iOS端成功上架,安卓直接扔在官网下载,并且考虑到很多用户会在微信中点开下载,专门设计了微信下载引导提示。
关于运营推广,由于软件本身的特殊性,直接联系了几位有影响力的藏族朋友进行宣传推广,而不是采用正常软件的商店位置推广、地推等方式。说到推广运营,实在是没什么经验和大家分享了,本文也纯粹是从技术层面分享一些经验了。
整个App由于是自己和朋友开发,不考虑人工成本的情况下,共计费用约2000元,要是算上人工的话,再加10万吧,哈哈。
文章较长,想到什么写什么了,没心思看的同学我已经把有用的东西标注出来了。
最后,大家可以看下app的效果:www.guolinka.com 林卡 - 藏文化的专属社区
如果大家有需要帮忙或者合作的,也可以联系我。 邮箱:[email protected] 不灭的小灯灯