周末的时候刚把应用的 ios 给上架了,接着他们就问我什么时候出安卓的版本。好久都没有再打开eclipse,安卓的开发我几乎都忘记完了,看样子要重头再来了。
安装好最新的更新,新建立了项目,发现无论是 官方的模拟器还是我那可怜的魅族M9,调试都很慢。慢到什么程度呢,从我按下调试按钮到应用的界面被显示出来,需要35秒+的时间。而我又是那种猜测编程式的,简直很崩溃。
在微博上抱怨了一番,结果表弟发了个关键词 Genymotion,我一查,是一个第三方的android 模拟器,果然不错。这里就推荐给大家,虽然我的这个空间几乎没有多少观众。
首先,需要去 http://www.genymotion.com 去注册一个帐号,这个帐号在后续中会使用到。注册并激活帐号后,就可以下载了。
然后,需要下载安装 vitual box 软件,下载自己对应的操作系统版本就可以了。
接下来,安装上面的2个软件。
第四步,打开eclipse,安装新插件,插件地址是http://plugins.genymotion.com/eclipse/。安装完成后,打开eclipse的选项菜单,里面就有genymotion的配置项,设置 SDK 的目录,以及代理什么的。
运行 genymotion ,创建虚拟设备。接下来就可以开工运行了,非常的方便。
这里我没有写更具体的,因为我觉得对于常见的 windows 和 mac 平台,是非常傻瓜式的,几乎不需要思考。
今天看cnBeta上面的新闻,这新闻说的是魅族在准备 android 4.0 的事情,文章里同时提供了一些照片和截图,这个新闻可以移步到这里查看详细内容。
你们猜衣服自己洗发现了什么?
真相在第5张图片。这张图片显示的是手机里安装的软件,第一个就是衣服自己洗发布的那个“手电筒”软件呀。顿时把我给美的呀,虽然这说起来也算不上什么,但是心里还是会很舒坦,这个“手电筒”软件不光魅族可以使用,其它的 android 手机也可以用的,有兴趣的同学可以到这里去下载。
诶哟喂,现在想一想心里还是很美。这个算是免费的推广么?
今天发现糗事已经通过了审核,在魅族App Store里上架了。
在先前的文章里也有提及这个东西,当时是给朋友进行内测,现在终于出第一版了。
糗事初期的数据全部来自糗事百科,衣服自己洗做这个应用的目的是因为:在看官方的页面时手机很不给力,M9系统本来就有些不稳定,页面里嵌套的广告经常会让手机重启;再加上页面里的分页体验不太好,一次只能跳转2页。当然还有一点就是内容质量明显没有以前的好了,各种乱。以前我还推荐给别人,后来不敢推荐了。
所以,我想自己弄一个吧,顺便也锻炼下,自己的水平太次了,很无语。
第一批采集过来的糗事抓了大概有1w2条记录(话说现在官方改版了,采集的模块看来又要重写了)。在等待上架的时间里,每天就自己审核,去掉一些无意义的、重复的内容,并对有的内容进行了编辑,主要体现在标点符号上,替用户节省一些不必要的流量开销还是有必要的。总体上来说还是尽量保持糗事的风格。当然咯,不可以避免的带有自己的主观色彩。
内测的时候数据是放在自己的国外空间里,后来发现访问很慢。加上这个时候长达半年的备案终于通过了,于是又换回国内了。当然,数据采集的这一块我打算还是使用 php 来实现。
数据传送采用 xml 来实现的,内容会在服务器端缓存 30 分钟,本来是想缓存5个小时或者更长。公司的代理不友好,不允许各种远程访问,所以我写的一个审核的程序在工作时间就不能用,只能每晚深夜的时候去审核。那么一天下来,数据内容不会有多少变化。后来一想,这不正在等待上架嘛,万一魅族的 QA 看到内容总是不更新,不让通过那不是搬石头砸自己的脚么。于是又改成30分钟,并且稍微有时间就去宽带实验室,在那里是可以远程访问数据库的。
当然,有一点点遗憾的是,我审核要严厉的多,过滤掉很多内容。虽然很后悔,但是在初期应该这样,提供给大家相对靠谱的东西。
最开始,我发现应用在启动的时候有时候会崩溃,申请有米广告的时候,对方也有提及。后来发现应用在启动的时候会开个新线程检查新版本,就会有问题。为了尽快通过有米的广告申请,我把检查新版本从启动中移除掉了,就没有问题了。后来问题解决了也没有再加上去,所以在这个最基本的1.2.25版本里就没有启动检查新版本的功能。
崩溃问题原因是找到了,就是坑爹的编码问题。
检查新版本时,服务器端会返回 1,**/q.apk 这样的字符串。应用通过比较 app code来判断是否需要更新。本地开发环境没问题,问题在于服务器端,我是新建了个记事本文件,然后修改的编码后传上去的,于是就杯具了。即使用记事本另存为 utf-8形式,客户端解析的时候还是会出现乱码,所以在比较 app code的时候就崩溃了。本地环境是没有问题,纠结了几天才发现的。调试不会用有没有!!
版本是上架了,但是通过内测反馈和日志,发现了应用的缺陷,就是会报告指针为空的异常。在非WIFI环境等网络条件不是很稳定的时候,点击导航的上一页、下一页,以及菜单里的最新功能时崩溃的概率会比较大。
所以在下个版本里,需要做的事情有:
1、启动时检查新版本。我觉得这个要加上去,每次审核应用都是要一个星期时间,有了自动更新功能,就方便很多了。
2、解决导航时停止响应及崩溃问题。
3、代码优化。
4、内容的更新(第一批数据我到现在都还没有审核完,很汗)
5、设置的实现。当前版本里的设置功能就是个摆设,因为我不知道需要设置什么。
申明下,应用支持的最新版本是 2.2 。我开始发给我同学安装时总提示解析失败,后来发现版本低了,他的系统是2.1的,我修改了下miniSDK的要求,就没有问题了。但是开发环境里总有个黄色的感叹号,于是又给还原了。
从魅族内测的用户反馈来看,大家觉得界面有点简单。我得想想该怎么弄好。
周末在家弄了下,客户端这块主要的功能基本上可以了。不会 Java 的人你伤不起啊,进度缓慢啊~
先前老早就在有说做这个,但是一直都没有实现,现在可以先泄漏一些内部图片,期待你们的反馈喔。
写这个小东西的时候,一点也不缺少调料。例如 “1”==”1″ 返回 false,例如 Service 调用 AlertDialog 失败的情况,例如下载内容的处理。
发现php在创建文件的时候,怎么都创建不成功,还以为是 fwrite 的问题,后来网上按照别人的方法,直接把 www 目录给了 777 权限了,再按照网友的建议,改为 file_put_contents 的方式,一切都安静了。
接下来要做的就是服务器端的事情了,目前我还没有定下来是要用 php 还是用 net 来实现,这个取决于我对 php/linux 的领悟情况。最近很不顺利,应该说今年都不怎么顺利,工作上、生活、情感上面都有事情在发生。有时候就想,找个没有人的地方躲起来,例如开往武汉的航班出事了,我掉到一个无人的小岛上。
在最后,期待各位看官给给意见,例如流程、交互、UI/UE上面哪些还有完善改进的地方。这个不是出书,但是还是需要谢谢 olay ,给我足够的项目时间,使得我可以从3个项目中抽时间做这个应用。