gpt4 book ai didi

c# - 如何为推送通知解码 Unity 的 iOS 设备 token ?

转载 作者:行者123 更新时间:2023-11-29 11:41:10 25 4
gpt4 key购买 nike

我正在实现 Unity 的 Notification Service适用于 iOS。

我认为我的实现没有问题。

我是这样注册的:

NotificationServices.RegisterForNotifications(NotificationType.Badge | 
NotificationType.Alert | NotificationType.Sound, true);

我还在我的功能中启用了推送通知。

为了获取设备 token ,我使用 NotificationServices.deviceToken .

DeviceToken 的问题在于它返回一个 byte[]而且我不知道如何解码它。我尝试了几种方法,但唯一能给我一些可读性的方法如下:

byte[] token = NotificationServices.deviceToken;
Debug.Log(System.BitConverter.ToString(token).Replace("-", ""));
Debug.Log(Convert.ToBase64String(token));
  • 第一个方法返回我:348CDFAE308F9107A3DB0807CC363BBB01DEC33008E9F474A9A81D57D039D245 , 如果没有替换,它将是 34-8C-DF-AE-30-8F-91-07-A3-DB-08-07-CC-36-3B-BB-01-DE-C3-30-08-E9-F4-74-A9-A8-1D-57-D0-39-D2-45
  • 第二种方法返回给我:cFXd3wLN0aCOpx7vn9pwDlJ24W32m9WO3A+WY28G4Zs=

但是,这里是有趣的部分,如果我修改 Unity 在编译时生成的方法 didRegisterForRemoteNotificationsWithDeviceToken:(NSData*)deviceToken , 使用以下示例:

NSString *token;
token = [deviceToken description];
NSLog(@"Token: %@", token);

我得到以下结果: Token: <7055dddf 02cdd1a0 8ea71eef 9fda700e 5956e16d 8e9bd54e dc0f9263 6f03e19b>

我已尝试使用我拥有的所有 token 发送推送通知,但它们都不起作用。

所以,我的问题是,来自 Unity,我如何才能正确解码 deviceToken 以发送推送通知?

谢谢 =)

最佳答案

我发现这是第一种方法:

byte[] token = NotificationServices.deviceToken;
return BitConverter.ToString(token).Replace("-", "");

Unity 以大写字母显示所有内容,但它在尝试推送通知时有效(看起来 iOS 不区分大写字母)。我在尝试使用生产通知测试开发构建时犯了一个错误。

关于c# - 如何为推送通知解码 Unity 的 iOS 设备 token ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46493823/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com