我压根儿就没想过要写这么个东西。这趟水趟得稀里糊涂,纯属被逼无奈。

这事儿得从头说起。去年年初,我老丈人身体不太利索,医生建议去个空气清净点的地方待着。我老婆当时就选中了“圣塔县”。名字听着挺洋气,就是个四不靠的小县城,人少,清净,唯一的缺点就是啥信息都没有,活脱脱一个信息孤岛。

我跟着过去伺候了三个月,差点没把我这IT老炮儿给憋死。想找个社区卫生站,得去问门口坐着晒太阳的大爷;想查班车时间,得跑去镇口的破牌子那儿看,那字儿都快被风吹没了。最要命的是,老丈人有次药吃完了,我要找县城哪家药房有现货,翻遍了手机也没个官方渠道能问。就靠我一个一个打电话去问。

被逼无奈的动手:打开安卓的黑盒

第三个月,我彻底被这原始的生活方式搞崩溃了。当天晚上,我对着空气骂了一通,然后一拍桌子:TMD,自己做!

小编温馨提醒:本站只提供游戏介绍,下载游戏请前往89游戏主站,89游戏提供真人恋爱/绅士游戏/3A单机游戏大全,点我立即前往》》》绅士游戏下载专区

我立马给我的笔记本装上了吃灰已久的Android Studio。我想着不用整那些花里胡哨的架构,就一个要求——能用,数据必须可靠,而且最好能离线顶一会儿。

  • 第一步:数据采集,抓取那堆烂泥

    我把目标瞄准了县里那几个零散的公众号和政府网站。这些东西压根儿没API,发布信息全靠小编心情。我只能写了个最糙的Python脚本,伪装成一个老实的浏览器,爬取每天发布的社区公告、公交调整、停水停电信息。过程中,发现很多数据都是图片形式,没辙,又调用了一个简陋的OCR工具把图片上的文字抠出来,再用正则硬处理成能入库的格式。这个过程花了我整整一个星期,吐了一地的血。

  • 第二步:本地化优先,搞定数据存储

    考虑到圣塔县这边的信号跟闹着玩似的,我就决定把所有的关键数据,比如医院、药房、社区站点的详细地址、最新的班车时刻表等等,全部扔进一个SQLite数据库里。App启动时先读取本地,再异步去网上拉取更新。我没用任何ORM框架,就直接写了一堆原生的SQL语句往里面怼,简单粗暴,速度快,维护起来也就那么回事儿。

  • 第三步:UI界面,给老年人设计的土味风格

    界面必须要大!字体要粗!我直接放弃了Material Design那些花哨的东西,全部采用最原始的Android控件。主页就是四个大大的按钮,红、绿、蓝、黄,分别对应“便民服务”、“医疗卫生”、“社区公告”和“公共交通”。按钮底下配上直观的图标。我甚至特地调高了按钮的点击区域,防止老人家手抖点错。

的实现与分享:土味 App 的逆袭

我前后忙活了快半个月,总算把这个《圣塔县的生活安卓》第一个版本给鼓捣出来了。我拿给老丈人和他那帮天天坐着晒太阳的老伙计们试用。他们上手贼快,毕竟功能就那么几个,字儿又大。

让我没想到的是,这个App竟然在那些老头老太太群体里悄悄传开了。不是通过任何应用商店,就是靠着他们互相用蓝牙或者那个“快传”功能传安装包。我一个月后随手看了看后台那个简陋的计数器,发现用户数都快奔着一千人去了。这可是圣塔县四分之一的常住老年人口!

我当时就悟了,有时候我们这些搞技术的,总想着用最新的框架、最复杂的逻辑去解决问题。但是在这种地方,最有效的反而是最简单、最直接的方式。它不炫酷,它甚至有点丑,但它实打实地解决了生活问题。

直到我也没有把它上架任何官方渠道,就一直这么粗糙地维护着。每次更新,我就在群里吼一嗓子,让他们自己传。它就是我留在圣塔县那段日子的一个印记,一个关于“技术为谁服务”的最朴素的实践记录。

免责声明:喜欢请购买正版授权并合法使用,此软件只适用于测试试用版本。来源于转载自各大媒体和网络。 此仅供爱好者测试及研究之用,版权归发行公司所有。任何组织或个人不得传播或用于任何商业用途,否则一切后果由该组织及个人承担!我方将不承担任何法律及连带责任。 对使用本测试版本后产生的任何不良影响,我方不承担任何法律及连带责任。 请自觉于下载后24小时内删除。如果喜欢本游戏,请购买正版授权并合法使用。 本站内容侵犯了原著者的合法权益,可联系我们进行处理。