

隆重介绍 Alarmedic:你的全新服药助理
source link: https://astrianzheng.cn/introducing-alarmedic.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

在 上一篇文章 中,我提到我已经完成两款 app 的开发:一款是 Nintendo Switch 媒体转移工具 Switshot,另一款就是这篇文章里提到的 Alarmedic。今天,我们就来聊聊 Alarmedic,有关于它的诞生、形态和未来功能,等等。
为什么是一款服药助理 App?
Alarmedic 是我在很早之前就很想制作的一款 app:一款用药助手,能够帮助用户管理自己的药品和服药计划。这款 app 的灵感,源于我在两年间的一些观察:
- 首先,长期服药这件事情就是与习惯做斗争的过程。
- 我本身也有服药经历,由于药品本身有复杂的医嘱、注意事项和服用时间,很多时候我很难搞清楚究竟什么时候该吃什么药。
- 家里人也需要服药,他们需要吃什么药?什么时候吃?
- 我什么时候会将药品吃完?什么时候完成一个疗程?什么时候需要复诊?
- 家里的常备药,会在什么时候过期?
目前市面上的确有一些服药 app 已经有类似功能,但通常界面并不尽如人意。以及,一些较好的服药提醒 app 集成许多诸如血压等等周边功能,却缺少诸如 Apple Watch 配套 app、桌面小组件和更多可以快速访问药单的方法,或者是以上功能可能会缺少一二。
于是,我打算自己做一个出来。你现在看到的 Alarmedic 就是这样的设想的 初级阶段。在现在的 Alarmedic 里,它可以根据你输入的信息,帮你自动规划服药计划,并在对应时间点提醒你服药;同时,你还可以将药单标记为「已服用」,以此来生成服药历史记录。对了,它还支持 iCloud 备份,在更换手机的时候,你的所有数据都会自动被保留。

Alarmedic 打造的过程
Alarmedic 的底层使用的是 SwiftUI。它的好处是确实地简化我的开发流程,对于我这种对 Vue.js 和 React 比较熟悉的人来说,绝大部分的开发流程与范式几乎都可以平移。这与我以往尝试使用的 Storyboard 有着天壤之别。
即便如此,Swift 毕竟不是 JavaScript,SwiftUI 也不是 Vue.js 和 React,这意味着你需要利用 Swift 生态中的规则来进行编程,而不是 JS。还好的是,在开发 Alarmedic 的时候,我并非对 Swift 一窍不通(Swift 也不是很难学的编程语言);SwiftUI 脚手架生态中目前也有一些非常好用的「轮子」来帮助我快速解决开发问题。就这样边学边做,初版 Alarmedic 花费我大约半个月的时间进行开发。(在之后开发 Switshot 的时候只做了一天不到的时间。)
当然,代价也是有的——作为较新的开发技术,SwiftUI 只能在较新的操作系统运行,甚至一些常见的交互与接口,只有在 iOS 15 或是 macOS Monterey 才能使用,这导致使用 SwiftUI 的程序注定对旧的操作系统兼容性不佳。
总体来说,除了遇到 Xcode Beta 降级、以及 Core Data 和 CloudKit 相关的一些问题之外,开发过程总体而言是轻松加愉快的。你可以看看我的上一篇 关于 SwiftUI 的一些总结文章 来了解更多。
需要特别提出的是有关 Alarmedic 的图标(logo)。这个图标是由 puddding 设计的,是药丸与铃铛的结合,这在我之前的想法中是完全没有过的思路,而且结合得很好。(就是偶尔会幻视成雪糕这一点就有点…… 但图标设计的质量是真的让我很满意。)

「初级阶段」与「完全体」
前面我提到过,目前的 Alarmedic 还是一个初级阶段。它可以帮助你完成有规律的药品服用计划与提醒,但许多想法中的功能还没有出现,一些服药 app 基础功能也有待添加。
我在给 Alarmedic 内测人员的最后一版 TestFlight 的 release note 里,写明在不远的将来,Alarmedic(大概率)会加入的功能。包括:
- 支持不足 1 单位的用药用量
- 支持「间隔日」(每隔几天进行给药)
- 支持为服药者和药品添加照片
- Apple Watch 版本
- 桌面小组件
- 自定义通知声音
其中有很多是内测用户与其他用户的反馈中认为应该有的功能,有些则是我认为 Alarmedic 应该有的功能。这些功能经过最后的评估与最终开发后,会陆续通过 Alarmedic 的第一批更新来逐步加入。
在更远的将来,我希望 Alarmedic 能够成为家庭药品管家。理想的情况下,拥有 Apple Watch 的老人可以通过 Alarmedic 了解子女为其安排好的服药计划,子女也可以通过 iPhone 追踪老人家是否有准时吃药;家庭成员也可以通过 Alarmedic 了解家里药箱里有什么药,什么时候该换;慢性病患者也可以通过 Alarmedic 追踪疗程……
当然,以上这些纯属画饼。目前 Alarmedic 需要做的事情,就是更新功能、继续打磨,至少能够保证不像现在这样「简陋」?。
关于 Alarmedic 的付费模式
Alarmedic 采用免费 + 订阅制内购的模式营收,即本体免费下载、完整版(Full Access)收费为每年 20 元。
Alarmedic 的免费版拥有如下限制:
- 只能建立 1 个人的服药资料
- 只能创建 3 个服药计划
- 只能使用系统提供的服药时点,无法修改、新增或删除
在我的设想下,Alarmedic 的免费版应该用于临时使用的场景:我并不需要长期服药,但可能因为一些头疼脑热需要临时服药。这时候,免费版的限额应该足够绝大多数这样的场景使用。
对于长期服药、有小孩或老人的用户来说,无以上限制的完整版是必须的。当然,你可以选择只支付试用期费用或一年的费用来修改数据,过期后继续在 Alarmedic 中使用这些数据(数据会保留)。同时,Alarmedic 的完整版订阅是可家庭共享的,这意味着如果你的家人也使用 iPhone 而且组成家庭组,那么你们只需要订阅一份 Alarmedic 完整版就能共享这个订阅。
为了让大家尝试 Alarmedic 高级版是否适合,我设置了 1 元试用一个月的新用户试用。如果 Alarmedic 对你有所帮助,持续订阅 Alarmedic 完整版可以支持我持续维护 Alarmedic 开发;当然,如果你觉得目前 Alarmedic 并不适合你,你也有随时退订的自由。:-)
还有更多……
关于 Alarmedic 的故事,这只是一个开篇。如果你有任何的意见或是建议,或者单纯想分享你使用 Alarmedic 的故事(会有吗?),欢迎你和我说说:hello(a)astrianzheng.com。
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK