gpt4 book ai didi

ios - 如何在不是 AppDelegate 的另一个类中获取 devicetoken?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:59:31 25 4
gpt4 key购买 nike

下午好。我是巴西人,请原谅我的任何英语错误!

我正在向我自己的设备发送推送通知。我可以在我的 AppDelegate.m 中获取我的 deviceToken:

- (void)application:(UIApplication*)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData*)deviceToken {  
NSLog(@"Device Token Global : %@", deviceToken);
}

但我有一个名为 LoginViewController.m 的类,我在其中执行登录并将 deviceToken 发布到网络服务(将其插入到 mySQL 表中)。如何在我的 LoginViewController.m 类中将此 deviceToken 作为字符串获取?

最佳答案

将 token 转换为字符串:

NSString *tokenString = [deviceToken description];
tokenString = [tokenString stringByTrimmingCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@"<>"]];
tokenString = [tokenString stringByReplacingOccurrencesOfString:@" " withString:@""];

使用您选择的特定于应用程序的 key 将 token 存储到 NSUserDefaults:

[[NSUserDefaults standardUserDefaults] setObject:tokenString forKey:@"MyAppSpecificGloballyUniqueString"];

然后,在您应用的其他地方检索它:

NSString *tokenString = [[NSUserDefaults standardUserDefaults] objectForKey:@"MyAppSpecificGloballyUniqueString"];

不必使用NSUserDefaults。您可以使用任何类型的全局状态、单例对象、注册表或依赖项注入(inject)来传递值。你怎么做取决于你;这只是一个例子。

关于ios - 如何在不是 AppDelegate 的另一个类中获取 devicetoken?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13942482/

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