如何解决Mac App Store提交时‘unitypurchasing’已被其他应用占用的问题?
问题成因分析
这个报错的本质是Bundle ID 全局唯一性冲突,具体拆解下来有这几个关键点:
Unity IAP插件的默认ID重复问题
你用的Unity内购插件(unitypurchasing.bundle)自带的默认CFBundleIdentifier是com.unity.purchasing.unitypurchasing,这个ID是Unity官方给插件预设的通用值。但架不住大量用Unity开发Mac应用的开发者都直接用了这个默认ID没修改,导致苹果的App Store后台已经有其他应用注册过这个ID了,你再提交自然就撞车了。苹果的Bundle ID规则要求
Mac App Store 对所有上架内容的标识有严格要求:不管是主应用本身,还是嵌套在应用里的插件、框架、bundle资源,每个的CFBundleIdentifier都必须是全局唯一的,不能和任何已上架(甚至正在审核)的应用/插件重复。为什么之前版本没报错?
你之前的应用版本没有内购功能,也就没有打包这个unitypurchasing.bundle插件,苹果后台不会检测到这个重复的ID;现在新增内购后插件被打包进应用,触发了苹果的唯一性校验,才抛出了这个错误。
内容的提问来源于stack exchange,提问作者SePröbläm
相关产品推荐
相关产品推荐

