推送通知中的设备令牌要求

时间:2016-04-30 11:49:05

标签: ios unity3d push-notification apple-push-notifications unity5

我实际上已经在我的游戏中实现了推送通知服务,但我想知道一些我想要清除的问题。

完全在我们的自定义服务器上完成,因此未使用任何第三方服务帮助。为此,我使用了核心Unity推送通知代码。

NotificationServices.deviceToken

注册完成后,我需要将deviceToken添加到Web服务器。为什么我需要这样做?我无法得到这个概念。

如果我添加SystemInfo.deviceUniqueIdentifier,那么它将无法发送任何推送通知。它只能使用deviceToken。

请与此分享您的建议。

1 个答案:

答案 0 :(得分:0)

推送通知仅适用于设备令牌,您必须获取它并将其存储在服务器上。

我们将设备令牌存储在服务器上,sothat服务器向所有用户发送通知。 如果我们不保存设备令牌,那么服务器如何发送通知以及在哪里(设备令牌是每个设备的唯一ID)。

在app delegate中,您必须使用此方法

-(void)application:(UIApplication *)app
                   didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken 
 {

       const unsigned *tokenBytes = [deviceToken bytes];
       NSString *hexToken = [NSString stringWithFormat:@"%08x%08x%08x%08x%08x%08x%08x%08x",
                      ntohl(tokenBytes[0]), ntohl(tokenBytes[1]), ntohl(tokenBytes[2]),
                      ntohl(tokenBytes[3]), ntohl(tokenBytes[4]), ntohl(tokenBytes[5]),
                      ntohl(tokenBytes[6]), ntohl(tokenBytes[7])];

     [[NSUserDefaults standardUserDefaults] setObject:hexToken forKey:@"DeviceTokenValue"];// Save your device token for use
     [self saveDeviceToken:hexToken];//Send your device token to the server with API

  }