2013-04-05 82 views
11

我在这里阅读了许多帖子,并且整天都在浏览Apple文档。这里没有任何文章有答案,文件在这个问题上不清楚。iOS推送通知适用于开发人员,但不适用于企业分发

我们有一个使用的开发配置文件时收到推送通知的应用程序,但不是当我们用我们的企业分布图。

为沙箱中的推送通知启用应用程序ID。

证书和两个配置文件与应用程序ID相关联。

如果我建立窗体Xcode推送通知正常。如果我归档并分发服务器返回:

[Failed to push 6dje7djksis7hyhdjshsjksjd74jdjskshdjd8dhjjdkwu for reason 8] 

这是无效的令牌。

有一两件事我注意到的是,我们的开发供应配置文件有以下为APS-环境:

<key>aps-environment</key> 
<string>development</string> 

虽然企业分布图有:

<key>aps-environment</key> 
<string>production</string> 

当我运行调试版本,以我的手机(推送作品).app文件的权限为:

<key>aps-environment</key> 
<string>development</string> 

当我存档他们总是(不管是什么的provisioning profile我使用或计划):

<key>aps-environment</key> 
<string>production</string> 

谁能告诉我,如果这是预期?本网站上的其他任何问题都没有找到,但实际上却提出了开发者可以工作但Enterprise Distribution不愿意的原因。

为什么要归档总是使aps环境生产?

感谢您的时间。

更新 这很有趣。

来源:

http://developer.apple.com/library/ios/#documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/ProvisioningDevelopment/ProvisioningDevelopment.html

“你必须得到独立证书沙箱(开发)环境和生产环境的证书与应用程序的标识是推送通知的收件人关联。 ;这个标识符包括应用程序的包ID当您为其中一个环境创建供应配置文件时,必要的权利将自动添加到配置文件中,包括特定于推送通知的权利这两个供应配置文件称为开发和分发。分销条款oning配置文件是将您的应用程序提交到App Store的要求。“

这可能意味着,除非你要生产不使用的分布形状。真的吗?这看起来很奇怪,因为您可以在访问应用商店之前创建企业分发配置文件。

任何人都有这个想法吗?我无法在文档中找到任何具体信息。

感谢

+0

两者的AppID的开发和生产的版本已启用(在苹果供应网站)推送通知? – GoZoner 2013-04-06 02:50:26

+0

啊!很好的问题!我应该说明。不,我故意从未启用生产配置文件。发展方面是绿色的,生产方在门户网站仍然是黄色的。 – addzo 2013-04-06 10:43:27

+1

企业版本使用生产/分销证书。您需要启用它并将其与推送服务一起使用。 – Dancreek 2013-04-06 20:05:54

回答

11

有2个推送证书为您的应用程序。 1个用于开发,1个用于生产。查看供应门户的推送证书部分。

所以,无论您用于发送推送的推送机制都需要使用正确的证书进行配置。在您的情况下,企业版本将使用生产/分销证书进行推送。

+1

是的!我做了一些测试,发现没有办法让企业构建具有除生产以外的任何环境价值。对我来说这很奇怪,但这是真的。企业构建的目的是在您投入生产之前将其发送给人员。但它就是这样。 现在我只需要弄清楚,为什么将构建发送给人员使得推送通知不起作用,即使在使用我的开发人员配置文件而不是企业配置文件构建之后进行分发。也许它知道它不是特别的。 谢谢丹尼克! – addzo 2013-04-08 00:13:44

+7

企业的目的是生产版本。它打算被公司用于生产内部工具。它是通往App Store的私人替代生产路线。 – Dancreek 2013-04-08 16:11:33

+0

K.这也是很好的信息。再次感谢Dancreek! – addzo 2013-04-08 20:58:24

1

两者的AppID的开发和生产的版本需要有苹果供应曲线“的网站上启用推送通知。

+0

我不确定我是否清楚。目前我们只针对沙盒。如果我们不使用生产配置文件,为什么需要启用生产?我们的问题是,使用企业分发配置文件而不是开发人员配置文件使推送停止工作。 我错过了什么? 谢谢 – addzo 2013-04-06 18:51:03

+0

嗯,这很容易尝试。只需启用它,安装更新后的配置文件并查看。您使用的沙箱不相关。 – GoZoner 2013-04-06 20:11:36

+0

在我身边,我有两个包含推送通知的配置文件,但它只适用于开发人员配置文件,并且不与配送文件配合使用...现在该怎么办? – preetam 2013-07-12 08:49:49

1
  1. 使用生产证书。
  2. 使用生产APN主持人:gateway.push.apple.com,而不是发展APN:gateway.sandbox.push.apple.com
  3. 使用生产APN反馈主持人:feedback.push.apple.com

详细检查here