[英]Linking user account to device token for push notifications
我有一個使用API服務器設置的應用程序,每個用戶在下載該應用程序時都會通過電子郵件或Facebook創建一個帳戶。 該信息全部存儲在后端。 我想啟用推送通知,以便它們是針對特定用戶的。 我知道在APNS服務器等后端需要做些什么。我的問題是將設備令牌與用戶帳戶相關聯,以便我可以根據服務器邏輯向正確的用戶發送正確的信息。
我知道我將這段代碼放在applicationDidFinishLaunching
:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window.rootViewController = self.viewController;
[self.window makeKeyAndVisible];
// Let the device know we want to receive push notifications
[[UIApplication sharedApplication] registerForRemoteNotificationTypes:
(UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound | UIRemoteNotificationTypeAlert)];
return YES;
}
然后我從這里獲取設備ID:
- (void)application:(UIApplication*)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData*)deviceToken
{
NSLog(@"My token is: %@", deviceToken);
}
- (void)application:(UIApplication*)application didFailToRegisterForRemoteNotificationsWithError:(NSError*)error
{
NSLog(@"Failed to get token, error: %@", error);
}
我是否正確地認為,當用戶登錄時,我可以將設備令牌發送到我的服務器並將其與該用戶相關聯? 我可以在API調用中添加一個屬性來處理該問題,我只想確保該屬性符合Apple的預期做法。 然后,當用戶注銷時,我只是從其用戶名中清除設備令牌,這樣,如果另一個用戶登錄同一設備,則不會有重復的令牌。
那正是你應該做的。 在didRegisterForRemoteNotificationsWithDeviceToken
您可以在本地存儲設備令牌,然后,當用戶登錄時,可以將帶有用戶標識符的設備令牌發送到服務器。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.