我从哪里获得城市飞艇iOS注册所需的设备令牌?

我从哪里获得城市飞艇iOS注册所需的设备令牌?,ios,mobile,token,Ios,Mobile,Token,从在线API: HTTP PUT to/api/device_tokens/在我们端注册一个设备令牌。这让我们知道设备令牌是活动的,并且应该在每次打开应用程序时发生,以确保设备令牌列表保持最新 首先,我如何获取设备令牌?我相信您需要查看:实现应用程序:didRegisterForremotentificationswithDeviceToken方法以接收设备令牌 编辑:《城市飞艇指南》位于 编辑:发送APNS消息的唯一方法是使用设备令牌:您必须将设备令牌传递回通知的发起点所在的非Apple服务器

从在线API:

HTTP PUT to/api/device_tokens/在我们端注册一个设备令牌。这让我们知道设备令牌是活动的,并且应该在每次打开应用程序时发生,以确保设备令牌列表保持最新


首先,我如何获取设备令牌?

我相信您需要查看:实现
应用程序:didRegisterForremotentificationswithDeviceToken
方法以接收设备令牌

编辑:《城市飞艇指南》位于


编辑:发送APNS消息的唯一方法是使用设备令牌:您必须将设备令牌传递回通知的发起点所在的非Apple服务器。事务中有3个逻辑实体:设备、APNS服务器(苹果的后端)和原始服务器(本例中为城市飞艇的服务器)。该设备和苹果的后端已经拥有(或可以生成)令牌。城市飞艇服务器仅在您从设备向其发送令牌时获取该令牌。然后,它可以使用该令牌与APNS后端通信并识别设备。您要做的是使用
应用程序:didRegisterForRemoteNotificationsWithDeviceToken
回调,然后(通过HTTP或您选择的任何其他有线协议)将该令牌发送到原始服务器(城市飞艇文档向您展示了如何使用其库实现该操作)。他们的服务器现在可以使用该令牌与APNS后端通信。

要获取设备令牌,您有几个选项:

选择1 您可以在应用程序委托的
应用程序:didRegisterForRemotionTificationsWithDeviceToken:
方法中找到它作为发送的参数之一

选择2 您可以在设备成功注册远程通知后,通过调用
[[UAPush shared]deviceToken]
将其作为NSString获取

选择3 如果你没有访问代码的权限。你可以通过阅读你的应用程序对城市飞艇的呼叫来找到它。你可以用Charles proxy做这个。这里有完整的说明。总而言之:

  • 在iOS设备上安装Charles证书将在设备上的safari中运行
  • 通过Charles代理设备的无线连接
  • 在端口443上的
    *.urbanairship.com
    中启用SSL代理
  • 运行你的应用程序,查找在Charles中记录的指向提及“urbanairship”的URL的呼叫。它们应该被解密,其中一些将包含有关您的设备令牌的信息

  • 谢谢菲米。因此,您的链接似乎是从客户机的角度来看待问题的——我更多地是从服务器的角度来看待这个问题。如果设备可以向APN注册,为什么城市飞艇API要求注册设备令牌?如果服务器需要注册设备令牌,服务器如何知道所述设备令牌?“此处”是一个断开的链接。他们的[Urban Airship's]SDK将自动为您注册,因此您无需通过API注册: