帮朋友开发一个Web APP,原以为就是一个WebView套个壳,是件一两天搞定很简单的事情,没想到断断续续耗费了挺多时间,在这里简单记录一下。
朋友的需求很简单,他们有一个适配移动端的简单网站用于查询一些官方数据,之前只能在浏览器或者微信使用,现在希望能有个APP好出去唬人。既然移动端都适配好了,干脆加个壳做成Web APP 吧。o(╯□╰)o So easy~
ROUND 1
需求:
1、APP
2、能查数据
(o(╯□╰)o 他就是这么跟我说的)
开始工作:
新建项目拖入WebView,加载URL,编译通过。哈哈,五分钟,搞定,完成,完美!交付!
交付:
朋友看了之后很(bao)满(zou)意(了),你桌面这小绿人很可爱啊
你至少给老子弄个图标啊!!老子至少是拿出去唬人的!卧槽!点击链接怎么还闪白屏啊~~~卧槽!网络不好怎么还有英文~~~卧槽卧槽。。。。。哥们,你再稍微优化一下吧~(o´・ェ・`o)。这个这个还有这个还有。。。。额。。。。。。。
ROUND 2
需求:
1、离线缓存
2、图标、启动图片、沉浸式标题栏
3、JavaScript Native交互
开始工作:
1、为了能首次离线使用,将他们的网站源码打包放到了本地assets目录下。首次启动时将html解压到本地并加载。(哈哈哈,网站源码超简单,我管你泄不泄露的)。需要将html的访问链接都改为相对路径
2、添加JavaScript调用Native接口,下载更新本地html源码。由于之前从来没有做过下载功能,用Retrofit+OkHttp+RxJava 撸出一个下载功能,然后我就发现了filedownloader。。。。
3、图标、启动图、沉浸式等等等等
交付:
呵呵。能用了。有新的修改也能更新了。加载也有图片,图标也不是小绿人了。朋友心满意足的走了。卧槽!。。。卧槽,你怎么又卧槽。卧槽,崩溃了啊。什么时候崩溃了? 不知道。什么机器上?不知道。怎么用的?不知道,反正他们说崩溃了。。。。。好吧,看来需要统计下了
最后:
引入bugly把崩溃信息收集,bug改掉。App升级功能也顺便有了(虽然这app貌似不需要升级o(╯□╰)o)。朋友到现在再没找过我了。。。用bugly看了下使用统计,每天用的人还是挺多的吗,呵呵呵呵呵。。。。。