我有两个APNS(Apple Push)令牌可供比较。
一个来自Apple。每次我启动应用程序时,它都会从Apple收到令牌(作为NSData *)。
另一个来自我的应用程序的SQLite3数据库。当我的应用程序第一次从Apple收到令牌时,它在其SQLite3数据库中记录了令牌,其中INSERT的令牌为TEXT。
然后我尝试比较这两个令牌。是的,它们应该是相同的,每次我使用NSLog在控制台上输出它们时,它们看起来都是一样的。但每次我使用isEqual:或isEqualToString:进行比较时,我都没有。我很困惑。
任何人都可以提供帮助吗?
答案 0 :(得分:1)
我遇到了同样的问题并找到了一个简单的解决方案。要将令牌(NSData *)转换为字符串(NSString *),只需使用 description :
- (void)application:(UIApplication *)app didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)token {
NSStrinng *strToken = [token description];
...
}