Product
每次我打开一个新 App,如果一上来就连弹三个权限窗,我几乎都会下意识先关掉。
我自己这样做过很多次。后来真要用功能时,才看到“请在设置中开启麦克风权限”,然后开始后悔和烦躁:前面在没上下文时做的决定,最后还是得自己补救。
所以做 Reso onboarding 时,我先给自己定了一条约束:第一次见面要温和,不能给人压迫感。
问题通常不在于使用者不愿授权,而在于:
1. 他们不知道你为什么要这个权限
2. 连续弹窗制造的是压力,不是信任
为朋友而设计
我最初做 Reso 原型时,其实没太在意 onboarding。毕竟每个功能我都知道是干嘛的。但当我开始把它分享给朋友时,我突然想明白了一件事。
当你在为在乎的人做产品时,你会希望它是温和的。不打扰,不强迫。
这就像第一次认识朋友。你不会一上来就问:“你手机号多少?住哪?做什么工作?”没人喜欢这种开场。
我们的设计原则
最后我们定了两个原则:
- 尽量降低不适感:慢一点,不轰炸,让使用者有呼吸空间。
- 又不能让他们错过关键能力:降低摩擦的同时,关键信息不能丢。
这种平衡也受到我上即兴课的影响:观察现场气氛、对齐能量,而不是硬推剧情。
我们实际做了什么
Reso 要正常工作,确实需要麦克风权限和大约 2GB 的 ML 模型。这个前置要求不小。
所以我们不在一开始就要。
- 权限在关键时刻再申请:只有当你真的开始录音时才请求麦克风权限,那时上下文很明确。
- 其他事情都后台进行:你探索应用时模型静默下载,不用进度条挡路;想看再看。
- 优雅降级:模型还没准备好也能用,只是速度慢一些。界面会明确告诉你发生了什么("0.3x speed - optimizing..."),你可以继续。
真正重要的打磨
这一路靠的是反复迭代。朋友们下载 debug 版、搞混该留哪个版本、踩到边界情况。我们花在 onboarding 上的时间比我预期长很多,一直在测试什么体验是自然的,什么会让人有压力,什么会让人觉得坏掉了。
我们的目标始终是:打开盒子,它就能工作。优雅、克制,像一个在你需要时就出现、不需要时就安静待命的工作伙伴。
最好的 onboarding,最终不该让人觉得“我正在 onboarding”。而是觉得这个应用已经懂你了。
这不是营销,是我们自己踩过的坑。