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

后端 未结 2 754
有刺的猬
有刺的猬 2021-02-06 19:04

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,

M

相关标签:
2条回答
  • 2021-02-06 20:01

    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.

    0 讨论(0)
  • 2021-02-06 20:03

    When you install your app on the device via XCode it will run in development (sandbox) configuration. You will receive development token and you need to issue push notification via ssl://gateway.sandbox.push.apple.com:2195 (using development certificate).

    However: when you install your app via TestFlight your app is compiled (an run) in distribution (production) mode: production token is not the same as development token. It is also not enough to simply use this new (production) token. Push notification has to be issued via ssl://gateway.push.apple.com:2195 (using production certificate) in this case.

    0 讨论(0)
提交回复
热议问题