Apple Push Notification Registration & Device Token Receive clarification?

有些话、适合烂在心里 提交于 2019-12-29 07:07:06

问题


I am working on an iPhone app with Apple Push Notification integration. I have some doubts on this.

  1. If the user clicked "Dont Allow" button in the APNS registration alert, will our code still receives the Device Token from APNS?

  2. I have tested that when the user switched off the notification in iPhone notification, still the app receives the Device Token from APNS? It is correct?

Can anyone please clarify these doubts?


回答1:


  1. In my understanding on APNS, it doesn't depend on the user's action (as you mentioned that if when the user clicks on "Don't Allow" button) for your iOS to receive the Device Token.

    If you included in your app:

    - (void)application:didRegisterForRemoteNotificationsWithDeviceToken        
    

    This means that your iOS-based app is sending a request for Push Notification registration. In return, Apple sends the Device Token to the iOS; then the iOS sends the token to the app and then the app sends it to their service provider.

    Note that when the user is asked "Don't Allow" doesn't mean that you're not going to receive the device token. "Don't Allow" refers to the action to be taken to any notification received by the app that is intended for the user. Say, location. This is a whole different thing. This means that the user doesn't allow the app to use his/her location.

  2. Yes. it still receives the Device Token as what I have discussed in my answer to your question in #1. This is only a setting for your app, which means that you won't be receiving any visible notification (badge, message or a sound) whenever there are updates about any information in relevance to your application. It's like setting your Facebook account to only receive notifications when your friends sends you a private message. Other than that, you won't be notified at all.

    The process of enabling APNS is:

    1. Request for certificate Authority
    2. Create app id
    3. Configuring AppId for Push Notifications
    4. Create provisioning profile
    5. Provisioning a device
    6. Enabling the profile in Xcode
    7. Creating push notification provider.

For more understanding on APNS, check this out.




回答2:


I have tested with Xcode 6.1, ios8.1.2. Currently the device token will be generated only in two cases

  1. Apple's default consent with "Ok" option
  2. After "Dont allow", manual change in Setting->Notifications->app->AllowNotification(On)

By declining first time with apple's consent, will not generate device token, till manually change the value in settings page.



来源:https://stackoverflow.com/questions/11045406/apple-push-notification-registration-device-token-receive-clarification

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!