新手上架人生第一个iOS App

App 的名字叫Benect

寓意即 Be Connected, 因为它的功能是二次确认你的蓝牙耳机已经连上手机

初衷

可能是我 AirPods Pro 有 bug经常出现在手机上显示已连接但实际播放音乐还是外放的情况在家还好在安静的书店或者咖啡馆点击播放那一刻就会很忐忑

我的做法是每次把音量调到最小凑近耳朵以分辨耳机还是外放但是选一首音乐也很头疼我的歌单大都是摇滚所以即便很小声地测试也会很吵

最近正好在学 SwiftUI想到也许可以自己写一个工具解决这个11 月初开始动手了

编写

这个 app 的功能超级简单

  • 打开 Benect 后它会播放一段白噪声
  • 如果你的手机是静音模式外放情况下你将不会听到任何声音
  • 即便不是静音模式万一 AirPods 没连上图书馆/咖啡店里其他人听到的也只是一段海浪声雨滴声这很大程度上避免了尴尬

核心功能就是一个按钮点击播放白噪声产生这个念头不到半小时内我就写完了

付费

即使不付费你也可以正常使用 Benect

这部分是从朋友那得到的启发即便是最简单的产品也应该设置一些付费的功能以维持它能活的更久给更多人带来免费服务用爱发电终有一天会枯竭的所以做完基本功能后我就在想有什么不伤害免费用户体验但确实值得做成付费的功能呢想到了两个

  • 提供更多白噪声Pro 用户能切换自己喜欢的音频默认音频是海浪付费之后可以切换成雨滴虫鸣鸟叫它们是无版权音频因此商用也没问题
  • 支持用户录制我想到的场景是你可以录制自己的小猫打呼噜声或者如果你是妈妈可以录制自己孩子的牙牙学语也许能让测试变得温情且独一无二

注意Benect 无需网络连接这意味着你的一切录音数据均存储在本地所以无需担心隐私问题

最终开发这些 Pro 功能花费了我 90%的时间设置的价格是¥ 6 永久购买

踩坑

因为是第一次上架 App遇到了很多坑被打回来了 3 次才上架经验大概是

  • 确定你的 App 是内购(in-app-purchase)还是订阅(subscribe)我最初选择订阅但他们认为我的 App 不适合订阅订阅的 App 需要源源不断地为用户提供新场景和服务
  • App 名/副标题里不要含有 Apple 的产品或者服务名我的初衷是连接 AirPods所以在副标题里写的是确认你的 AirPods 连接被打回说我侵犯了 Apple 的版权

彩蛋

App icon 是我用 Processing 的Tutorial画的我画了好几版最终就是 icon 的样子形状有点像一个连接的符号也算勉强符合寓意