Search code examples
objective-cxcodeios8push-notificationtestflight

Device Tocken will Change after install from diawi or TestFlight? So Push notification is not coming


I'm currently creating an app that needs to receive push notifications from a server.

When I got the device token, I send it to my server and save it into DB,

My question is:


When I tried to normally install application on device from XCode, I got the correct device token and it is working for push notification.

But when I tried to install application from TestFlight or diawi, device tocken changed and for that wrong device tocken application not receive any push notification.

any help will be appreciate


Solution

  • I found answered of my question.

    Never use your NSUserDefaults' key as @"key".

    For example what I have previously used.

    [[NSUserDefaults standardUserDefaults] setObject:deviceToken forKey:@"key"];
    [[NSUserDefaults standardUserDefaults] synchronize];
    

    And what I am using now.

    [[NSUserDefaults standardUserDefaults] setObject:deviceToken forKey:@"token"];
    [[NSUserDefaults standardUserDefaults] synchronize];
    

    And now push notification is coming as it is.

    So conclusion is never used your key name @"key". I don't know why but may be some preference is using this @"key" by default.

    Thanks.