应该很少 iOS 开发会遇到的一个 bug ,供大家参考。
事情是这样,我在两周前上架了一个 iOS App ,用到很大的深度学习模型,当时只支持英语输入,上架地区选了全球,当时还给 v2er 们送了些促销代码。
这周训练了一个中文模型,想上架中文版,地区也选了全球,但被苹果审核拒绝了,还标记为spam,甚至最下面还警告我如果判定为 spam 会把我的开发者账号禁封了(当时忘截图了)。
我解释说 App 里模型不支持多语言,不像那种可以做多语言本地化的 UI 文字,客服很快回复说理解了,但「两个同一功能的 App 不能上架在同一片领土」,我试图挣扎说:两个 App 支持的输入语言不同,貌似也不算“功能相同”?应该有在美国的中国人,或生活在中国的美国人希望使用母语输入。估计苹果有一套自己的标准,审核把之前的回复又发了一遍。
最终我把英语版 App 从中国大陆下架了,中文版只上架了中国大陆。但这其实损害了之前付费购买了英文版的国内用户,我能做的是让他们联系我,免费赠送中文版促销代码。
后来,我在产品推荐 App 里看到英语区用户问这俩不是同一个 App 吗,而昨晚在电报看到有国内用户问为啥英文版没了,就贴了个我回复的截图:

总结一下造成现在这么奇怪局面的几点原因:
- 模型是语言敏感的,不同语言的模型不一样。
- 模型文件巨大,集成两个模型会导致 App 大小翻倍。
- App 不能联网,无法使用翻译 API 将所有语言先翻译成英语。
- 苹果政策导致英语版在国内被下架。
估计审核也没见过这种情况吧。