0

我尝试在我的应用程序中使用CloudKit 订阅,但didReceiveRemoteNotification没有被触发。

我保存CKSubscriptionCloudKit. 为了确保它们存在,当应用程序启动时,我将它们绘制出来,例如:

<CKSubscription: 0x15576310; ; Query Subscription: recordType=DailyVote, predicate=TRUEPREDICATE, subscriptionOptions=7, subscriptionID=1FA456A6-9BA5-411D-97B9-1EB57121A5D0, zoneID=(null)> predicate: TRUEPREDICATE subscriptionType: (Enum Value) subscriptionOptions: C.CKSubscriptionOptions

我尝试按照苹果文档的建议在 APN 服务器上注册我的设备,但错误委托方法被调用,并显示消息:

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {

    application.registerUserNotificationSettings(UIUserNotificationSettings(forTypes: .Alert, categories: nil))
    application.registerForRemoteNotifications()

    return true
}

func application(application: UIApplication, didFailToRegisterForRemoteNotificationsWithError error: NSError) {

    println("error: \(error.localizedDescription)")
    //error: no valid aps-environment entitlement found for application
}
  • CloudKit功能开启
  • 我没有无效的配置文件
  • 我已经成功了:Xcode> Preferences> Accounts> pick your Account> pick your Team> View Details>PRESS REFRESH BUTTON
  • 我什至用新的 iCloud 容器创建了一个新的应用程序,移动了所有逻辑,但错误是一样的,订阅通知不起作用。
4

2 回答 2

2

即使 Apple Doc在这里说:您不需要在会员中心为应用程序的显式应用程序 ID 启用推送通知来接收订阅通知。当您启用 CloudKit 时,Xcode 会自动将 APNs 权利添加到您的权利文件中。

如果您Push NotificationDeveloper Portal下面添加App IDs它会起作用,或者至少对我来说第二次尝试它会起作用。

于 2014-12-17T13:53:42.067 回答
0

该错误主要提示您使用的配置文件不支持aps环境,请确保在您的应用程序ID中进行修改后刷新配置文件,

试试这个,在文本编辑器中打开您的配置文件并搜索以下内容,

aps 环境

如果你没有找到这个,那么问题是相关的配置文件,如果有,那么试试这个..

如何在 Xcode 4.3 中修复“没有为应用程序找到有效的 'aps-environment' 权利字符串”?

于 2014-12-23T09:17:52.627 回答