发布 Tapsy 1.0
从首个 commit 到第一份上架二进制,八个周末。两个 TestFlight 构建,一共十四位测试者。一次 App Store 被拒——不是因为 App, 是因为元数据。
一份精简的时间线
- 周末 1:一个能计数的小部件。仅此。
- 周末 2:存储层。「数据模型」就是 plist 里的
[Counter]数组, 一直没换过。 - 周末 3:iCloud 同步。CloudKit 不难,难的是给要同步的东西命名。
- 周末 4:第一个能用的 widget。点击目标偏小,调大。
- 周末 5–6:watchOS 复杂功能。半个周末浪费在一个布局 bug, 其实是 entitlement 里缺了一条关系声明。
- 周末 7:设置、导出、App 主体。诚实地说占工作量 50%,使用 时长占 ~5%。
- 周末 8:TestFlight,修补,发布。
这篇手记会展开:那次被拒的具体原因(一条关于小部件命名的负面元数据 意见),以及若干看似微小但回头看相当重要的取舍——例如宽显示时 对计数向上取整。