我尝试在我的应用程序中使用CloudKit
订阅,但didReceiveRemoteNotification
没有被触发。
我把CKSubscription
留给了CloudKit
.为了确保它们存在,当应用程序启动时,我会将它们绘制出来,例如:
<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容器,移动了所有逻辑,但是错误是相同的,订阅通知不起作用。
即使 Apple Doc 在这里说:您无需在会员中心为应用程序的显式应用程序 ID 启用推送通知即可接收订阅通知。当您启用 CloudKit 时,Xcode 会自动将 APNs 授权添加到您的授权文件中。
如果您在App IDs
下添加Push Notification
Developer Portal
,它将起作用,或者至少对我来说第二次尝试它起作用了。
该错误主要提示您使用的配置文件不支持 aps 环境,请确保在修改应用程序 ID 后刷新配置文件,
尝试一下,在文本编辑器中打开预配配置文件并搜索以下内容,
APS-环境
如果您没有找到这个,那么问题在于与预配配置文件相关联,如果是,请尝试此操作。
如何修复 Xcode 4.3 中的"找不到有效的应用程序'aps-environment'权利字符串"?