乐于分享
好东西不私藏

我把调酒小程序塞进了一个app

我把调酒小程序塞进了一个app

事情是这样的。

这两天,我花了相当多时间,盯着一条看起来毫无意义的 Android 通知栏。

它不是什么严重 Bug,App 能打开,按钮能点,配方也能看。可只要页面顶到刘海和状态栏下面,整个东西立刻就从「像一个 App」,变成了「像一个被硬塞进手机里的网页」。

我就在那儿来回调安全区、导航栏、软键盘高度,还顺手把每个按钮的按压、涟漪和页面切换动画重新做了一遍。

折腾到后面,我突然意识到一件挺有意思的事。

我居然真的做了一个调酒 App。

你敢信???

它叫「今夜调酒」。

这个名字听起来挺像深夜酒吧门口的霓虹灯,但它干的事其实特别朴素。

你打开冰箱和酒柜,看一眼手头有青柠、白朗姆、蜂蜜、苏打水,然后告诉它你有什么。它再从现有配方里,帮你找到今晚能调的那一杯。

不是让你先知道酒名。

而是从你已经拥有的东西开始。

我一直觉得,这两个顺序看起来只差了一点,体验却完全不一样。

绝大多数调酒内容的起点,都是一杯已经被命名的酒。

你先看到莫吉托、尼格罗尼、威士忌酸,然后打开配方,发现缺一瓶酒。再换一杯,又少一种糖浆。折腾半天,脑子里记住了不少漂亮名字,杯子还是空的。

这事儿有点像做饭 App 每天给你推荐惠灵顿牛排,结果你回头看了一眼冰箱,里面只有两个鸡蛋和半根葱。

内容没错,场景错了。

所以我做「今夜调酒」时,最想解决的并不是「世界上有哪些酒」,而是一个更小、更真实的问题。

我手头就这些东西,今晚到底能调什么?

这也是整个 App 最核心的一条路径。

打开材料库,最多选五种原材料。果汁、鲜果、辅料、基酒和饮料都放在同一个工作台里。选中的材料会亮起金色描边,底部实时告诉你已经选了几个。

按下匹配之后,App 会根据材料命中数排列现有配方。不是凭空告诉你「最适合你的是某某酒」,也没有什么玄学推荐,就是很直白地告诉你,这一杯命中了几种材料,还缺什么。

说真的,我很喜欢这种诚实。

有就有,没有就没有。

不装。

除了材料匹配,我还留了一个很不讲道理的入口。

随机抽一杯。

有时候你不是缺配方,也不是缺材料,你只是懒得选。

这感觉我非常理解。很多人站在便利店饮料柜前,能盯着几十瓶东西看半天。选择越多,脑子反而越容易卡住。酒单也是一样,三四杯的时候还能认真想,三十多杯摆在面前,人就开始来回滑,然后默默退出。

所以首页可以直接从 34 款酒里抽一杯,连续抽取还会避开上一杯。

这不是多聪明的推荐算法,甚至可以说完全没有算法味儿。它只是替你扔了一次骰子。

但这种小小的随机性,跟喝酒这件事倒是很搭。

我们白天已经做了太多需要负责的选择。回什么消息,做哪个方案,买哪一份东西,几点睡。到了晚上,有时候真的不想再认真比较一杯酒的酸甜苦辣。

按一下。

今晚就它。

如果抽到的结果不合适,也可以搜索酒名、基酒和风味,或者把喜欢的配方留在收藏里。随机负责打开一个入口,搜索负责把你带回明确目标,收藏负责在这次使用里记住那几杯你愿意再做一次的东西。

我不想让这三个入口互相打架。

它们其实对应的是三种很真实的状态。完全没想法,大概有个方向,已经知道自己喜欢什么。

界面能认出这种差别,比单纯再多塞几个按钮重要得多。

目前里面一共有 34 款配方和 47 种原材料,覆盖威士忌、金酒、朗姆、龙舌兰、伏特加、白兰地、葡萄酒、啤酒、白酒、清酒、梅酒、苹果酒和黄酒。

听起来很多,但我不想把它吹成「市面上所有酒」。

不是。

它现在就是一个本地配方库,挑了相对常见的酒类和经典调制方式。没有后台,没有账号,没有云端库存,也不会知道你家的酒柜里到底还剩多少。

但反过来,这种简单也带来了一个我自己很看重的东西。

它完全可以离线使用。

而且是很彻底的那种离线。

不是第一次打开先下载一堆资源,也不是断网之后只剩一个空壳。酒品图片、配方数据、杯量换算和步骤交互都跟着安装包一起进了手机。

我后来检查权限清单时,看到里面没有联网权限,那一瞬间居然有点开心。

怎么说呢,现在看到一个什么权限都不问你的 App,反而会有一种很久没见的轻松感。

它不需要知道你是谁。

也不关心你凌晨一点为什么突然想喝一杯。

它就负责把配方摆出来。

配方、图片和交互都装在 APK 里面,App 没有申请联网权限。哪怕家里网络不稳定,或者你只是懒得注册账号,它照样能打开。

我有时候觉得,现在的软件特别容易陷入一种奇怪的冲动。

什么都想联网,什么都想登录,什么都想把一次简单操作变成一个账户体系。

但调一杯酒这件事,真的不需要这么复杂。

你需要的是把冰块放进杯子,把该倒的东西倒进去,然后在正确的时候摇一摇。

仅此而已。

回到 App 这块,匹配到配方之后,点进去就能看到完整用量。单杯、双杯和分享装会实时换算毫升数,不用自己拿计算器乘来乘去。

然后是我觉得最重要的部分。

它不会只扔给你一段大段文字。

点击「开始调这一杯」,页面会把当前步骤高亮出来。加冰、倒入基酒、加入果汁、摇匀、过滤、装饰,每点一次就往后走一步。你不需要在做事的时候反复找自己看到哪一行,只需要盯住当前这一格。

这块听起来没什么技术含量,对吧?

但我跟你说,很多工具真正好不好用,差别往往就在这种地方。

一张配方表解决的是「我知道了」。

一个会推进的步骤解决的是「我做完了」。

前者是信息,后者才是行动。

说到这里,我想起厨房里一个很老的概念,mise en place。

中文一般会翻成「准备就绪」或者「各就各位」。厨师在真正开火之前,会先把材料称好、切好、摆到顺手的位置。它不是为了让台面显得专业,而是为了让接下来的动作不被寻找和判断打断。

调酒也一样。

你真正需要的不是一座巨大的知识图书馆,而是让材料、用量和下一步,在你伸手的时候刚好出现在那里。

这也是为什么我后来给所有按钮加动画时,没有只想着「做得炫一点」。

按钮按下去会轻轻收住,触点会出现涟漪,场景切换会沿着同一个方向淡出再进入。随机抽酒、选择材料、切换杯量和推进步骤,各自都有不同反馈。

动画不是为了表演。

它是在回答你刚才那一下到底有没有生效。

这事儿在调酒场景里尤其重要。手可能是湿的,屏幕可能放在桌角,注意力也不全在手机上。一个没有反馈的按钮,会让人下意识再点一次。一个反馈太花的按钮,又会抢走你对杯子和用量的注意力。

所以我尽量把它做得克制一点。

按下去,有回应。

然后让路。

为了把它真正装进安卓手机,我还补了状态栏、刘海、手势导航栏和软键盘的安全区。Android 15 走 edge-to-edge,旧系统保留兼容路径。返回键也不是一按就退出,而是按照配方详情、匹配结果、材料库、首页的顺序,一层一层退回去。

这些东西单独看都挺琐碎。

甚至有点无聊。

可当它们全部合在一起,网页才慢慢消失,一个 App 才开始出现。

我是真的觉得,产品很少诞生在某一个惊天动地的大功能里。

它更像调酒。

酒早就有了,果汁也早就有了,冰块更不稀奇。真正让一杯东西成立的,是比例、顺序、温度,还有什么时候该停手。

软件也差不多。

34 款配方不是一个夸张的数字,47 种原材料也不是什么护城河。可如果它们能在一个人打开冰箱、想喝点什么的那几分钟里,刚好给出一条能走完的路径,那它就有了存在的理由。

当然,目前这个版本还很早。

它用的是测试签名,适合直接安装体验,但还不是应用商店里的正式发布版。它没有账号体系,也没有跨设备同步。收藏目前只存在当前运行状态,重新打开 App 后不会保留这次的选择,更谈不上换手机同步。

配方数量也远远谈不上完整。

如果你是专业调酒师,里面很多细节肯定还有继续调整的空间。杯型、冰型、技法、原料品牌,任何一项往深了走,都能再做一整套系统。

我非常理解有人会觉得,手机上查配方还不如直接搜索。

确实,搜索更全,也更快知道某杯酒是什么。

但我想做的是另一个方向。

不是回答「这杯酒怎么调」,而是陪你从「我现在有什么」走到「我真的调完了」。

这两个需求不冲突。

一个负责知道,一个负责做到。

坦率的讲,这个目标听起来比做一个大而全的酒类百科小得多。但你想想看,人真正愿意留下来的工具,往往不是知道最多的那个,而是在某个具体时刻,最懂得把下一步递到你手里的那个。

我希望「今夜调酒」至少先把这一件小事做对。

如果后面继续做,我最想补的也不是一口气塞进几千条配方,而是把这条路径做得更真实。让用户能维护自己的酒柜,让替代材料更清楚,让配方在不同杯型和浓度之间换算得更自然。

慢慢来。

毕竟酒也不是越满越好。

现在回头看,我还挺喜欢最开始那条通知栏的。

就是那条让我盯了很久、看起来毫无意义的 Android 通知栏。

因为当页面终于不再躲到刘海下面,按钮终于有了恰到好处的反馈,返回也终于回到用户以为它该回去的地方时,我突然明白,所谓把一个网页变成 App,并不是换了一个文件后缀。

是你开始认真对待它会出现的那个场景。

夜里,厨房或者客厅的灯没开得很亮,桌上放着半瓶酒、几块冰,还有一颗不知道该怎么处理的青柠。

手机亮起来。

今晚,调一杯。

目前「今夜调酒」支持 Android 7.0 及以上系统,测试版可以直接安装。如果你也想试试,可以留言告诉我你平时手头最常见的三种材料,我也想看看这套材料匹配逻辑,会被大家玩成什么样。

说实话,我自己也还在摸索。

但这件事挺有意思。

永远对世界保持好奇,也永远给今晚留一点灵感。

以上,既然看到这里了,如果觉得不错,随手点个赞、在看、转发三连吧,如果想第一时间收到推送,也可以给我个星标⭐~

谢谢你看我的文章,我们,下次再见。

相关学习资料