我有一个使用推送通知的应用程序,我正在尝试将其分发给测试人员进行测试。
如果我创建了一个通过 iTunes 安装的临时发行版,那么除了推送通知之外,一切正常,它永远不会到达。但是如果应用程序是使用 XCode 安装的,那么推送通知确实会到达。
当我使用 XCode 构建安装时,我将 XCode 中的代码签名身份设置为我的开发配置文件。当我为临时分发构建时,我将 XCode 中的代码签名身份设置为构建存档时的临时分发配置文件,然后使用临时配置文件再次签署存档以进行分发(我发现这是唯一的组合这将允许通过 iTunes 安装而不会出现错误消息)。
所有设备都已添加到 ad-hoc 分发配置文件和苹果推送配置文件(以及团队供应配置文件),配置文件已在 XCode 中更新和刷新。即使使用我自己的 iPhone,如果我使用 XCode 而不是 iTunes 安装,我也可以获得推送通知。
我是否使用不正确的配置文件签署临时分发,如果是,配置文件的正确组合是什么?为什么推送通知不适用于临时分发,但在通过 XCode 安装应用程序时,是否还有其他原因?
这些是使用的配置文件:
1) Apple push profile which has an App id of abcdef.com.company.mno
2) Project Development profile which has an App id of abcdef.com.company.mno
3) iOS Team provisioning profile which has an app id of abcdef.*
4) AdHoc Distribution profile which has an app id of abcdef.com.company.mno
5) My developer profile which has an app id of abcdef.com.company.mno
** 自从第一次发布此内容以来,我尝试使用 abcdef.com.company.mno 应用程序 ID 创建新的 iOS 团队配置文件,但没有任何区别**
abcdef.com.company.mno 应用程序 ID 显示开发推送通知已启用(这是正确的,我们尚未使用生产推送)。它的开发推送 SSL 证书也显示为已启用。
代码签名身份是:第一张图片我用于使用 XCode 安装/运行的图片,第二张图片用于构建临时分发的存档。
XCode 中 iPhone 分发配置文件的描述为:“Ad Hoc 分发配置文件(用于捆绑标识符 com.company.mno)”。