2016-11-10 104 views
0

我的应用程序有:为什么“didRegisterForRemoteNotificationsWithDeviceToken”没有被调用n swift 3,iOS 10,XCode 8?

APP ID - 推送通知启用,
提供个人资料(开发) - 推通知启用,
目标 - 能力 - 启用推送通知,
目标 - 背景模式 - 背景取,远程通知启用

在的appDelegate 1. import UserNotifications

2. class AppDelegate: UIResponder, UIApplicationDelegate, UINavigationControllerDelegate, UNUserNotificationCenterDelegate

3. 

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { 

    if #available(iOS 10.0, *) 
      { 
       let center = UNUserNotificationCenter.current() 
       center.delegate = self 
       center.requestAuthorization(options: [.badge, .sound, .alert], completionHandler: { (granted, error) in 
        if error == nil 
        { 


         //UIApplication.shared.registerForRemoteNotifications() 
         application.registerForRemoteNotifications() 
        } 
        else 
        { 
         print("\(error?.localizedDescription)") 

        } 
       }) 
      } 
      else 
      { 
       registerForPushNotifications(application) 
       // Fallback on earlier versions 
      } 
    } 

didRegisterForRemoteNotificationsWithDeviceToken是不会被调用,而不是didFailToRegisterForRemoteNotificationsWithError越来越通话

func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) { 

继错误我得到的didFailToRegisterForRemoteNotificationsWithError

域= NSCocoaErrorDomain代码= 3000“没有有效的“aps-环境'应用程序的权利字符串“UserInfo = {NSLocalizedDescription =无效的'aps-environment'应用程序的权利字符串}

我错过了什么吗?

+0

添加要在'didFailToRegisterForRemoteNotificationsWithError'收到错误。 –

+0

@NiravD我已经更新了我的问题,在执行中是否有任何缺失? – sss

+0

看看这一个http://stackoverflow.com/questions/27324020/no-valid-aps-environment-entitlement-string-found-for-application-on-app-store和这个http://stackoverflow.com/ questions/10987102/how-to-fix-no-valid-aps-environment-entitlement-string-found-for-application –

回答

1

我也面临同样的问题Xcode 8和我已经通过 选择Capabilities->Push Notification->Add the Push Notifications entitlement to your entitlements file选项中的问题。

欲了解更多信息,请找到下面的截图。

Screenshot

而且一旦你选择,则选项授权文件添加到您的项目文件夹。请找到下面的截图。

Screenshot

由于XCode 8,从当地的权利文件,而不是从你的苹果开发者门户网站创建的供应配置文件的权利设置。现在需要将权利添加到您的配置文件中的功能下的Xcode内部版本中。

希望它适合你!

+0

YES。我已经启用了权利。我启用了此功能,并在此之后创建了授权文件。我错过了什么? – sss

+0

然后我认为在配置文件中有问题,请检查它,因为我没有发现任何其他问题。 –

+0

在provosioning个人资料推送通知启用,即使对于iOS 9我收到通知具有相同的提供资料,但不与iOS 10 ...这是可能的,如果提供配置文件不正确? – sss

0

当我更新到最新版本的XCode和Sierra时,我遇到了类似的问题。

  • 我在将该项目的相关Apple ID添加到 项目 - >首选项之后得到了修正,试试吧。
  • 我还进行了各种你所采取的步骤支持iOS的10

enter image description here

相关问题