【发布时间】:2017-09-29 17:11:41
【问题描述】:
我正在为 iOS 实现 Unity 的 Notification Service。
我认为我的实施没有问题。
这就是我的注册方式:
NotificationServices.RegisterForNotifications(NotificationType.Badge |
NotificationType.Alert | NotificationType.Sound, true);
我的功能中也启用了推送通知。
为了获取设备令牌,我使用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=
BUT,这里是有趣的部分,如果我修改Unity在编译didRegisterForRemoteNotificationsWithDeviceToken:(NSData*)deviceToken时生成的方法,用下面的例子:
NSString *token;
token = [deviceToken description];
NSLog(@"Token: %@", token);
我得到以下结果:
Token: <7055dddf 02cdd1a0 8ea71eef 9fda700e 5956e16d 8e9bd54e dc0f9263 6f03e19b>
我尝试使用我拥有的所有令牌发送推送通知,但它们都不起作用。
所以,我的问题是,来自 Unity,如何正确解码 deviceToken 以发送推送通知?
谢谢 =)
【问题讨论】:
-
@Programmer
UTF8: pU���Ѡ�����pRv�m��Վ��co�� Default: pU���Ѡ�����pRv�m��Վ��co��
标签: c# ios unity3d encoding push-notification