2012-01-06 79 views
0

我正在开发一个与苹果推送通知服务交互的mdm服务器。当我在iPhone上安装配置文件时,设备会推送UUID并将魔术字符串推送到服务器。我的目标是在大量的iPhone上安装配置文件。在服务器端,我不知道UDID电话号码映射,我只有电话号码。如何将UUID映射到电话号码。将iphone uuid映射到电话号码

当我发送推送通知我必须使用UUID,对合格的设备发送正确的push命令,我需要的UUID VS电话号码映射

回答

1

设备注册到您的MDM系统后,您将知道该设备的UDID(唯一设备标识符)。然后,您可以发送DeviceInformation命令到设备并获取电话号码(如果实际上设备有电话号码)。您将该电话号码保存在数据库中的记录中,该记录与设备最初注册MDM时获得的UDID相关联。

从这时起,无论何时向设备发送命令,该命令将具有UUID。确保您的系统记住您要发送此命令的设备的UDID。当设备响应该响应将包含此UUID并使用此UDID时,您可以查找响应设备的UDID(以及电话号码)。

注意:如果您尝试将电话号码用作注册设备的唯一标识符,请不要。改为使用UDID。

+0

谢谢你的提示。我正在用javapns在java中开发这个解决方案。你知道如何使用javapns发送DeviceInformation有效载荷吗? – Ashutosh 2012-01-18 22:42:24

+0

不可以。我们有一个从头开始编写的使用'stream_context_create'函数的PHP实现。 – rlandster 2012-01-19 00:18:20

0

您不必使用DeviceUUID推送通知,你需要Apple产生的两个deviceTokens(沙盒或发行版)之一。

从苹果公司获得deviceToken在

- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)devToken 

之后,你有你的服务器上注册设备并发送phoneNumber的。 我没有看到其他选项。

+0

我们正在寻找解决方案,我们不安装应用程序,但安装配置文件和MDM有效载荷。当我这样做时,我使用pushMagic字符串UDID和令牌在mdm服务器上获得初始同步。该令牌不是APN服务所要求的64位格式。除此之外,我需要将此令牌/ UDID映射到电话号码,以便我可以存储映射以供进一步使用(我们将电话号码存储在我们的数据库中)。这个解决方案可行吗?我想尽可能避免创建应用程序。 – Ashutosh 2012-01-11 17:53:46