在Parse的这个blog post之后,我在我的主应用程序和Xcode中的扩展中启用了相同的应用程序组和钥匙串共享.
我还在我的主应用程序的AppDelegate和my Today Extension的vIEwDIDLoad中启用了以下内容:
[Parse enableLocalDatastore];[Parse enableDataSharingWithApplicationGroupIDentifIEr:@"group.com.me.myapp" containingApplication:@"com.me.myapp"];[Parse setApplicationID:@"myAppID" clIEntKey:@"myClIEntID"];
在WidgetPerformUpdateWithCompletionHandler中,我构造并执行了我的查询:
- (voID) WidgetPerformUpdateWithCompletionHandler:(voID (^)(NCUpdateResult))completionHandler { PFquery *query = [PFquery queryWithClassname:@"Note"]; [query whereKey:@"User" equalTo:[PFUser currentUser]]; [query findobjectsInBackgrounDWithBlock:^(NSArray *objects,NSError *error) { if (!error) { // check for difference between current and new data if([self hasNewData:objects]) { // fresh data notes = objects; [self.tableVIEw reloadData]; [self updatePreferredContentSize]; completionHandler(NCUpdateResultNewData); } else { // Data is the same completionHandler(NCUpdateResultNoData); } } else { // Failed completionHandler(NCUpdateResultFailed); } }]; }}
第一次加载似乎工作正常 – 我能够得到我的PFObject列表.但是,每当扩展重新加载第二次时,以下异常:enableDataSharingWithApplicationGroupIDentifIEr:containingApplication:’必须在vIEwDIDLoad中的enableDataSharingWithApplicationGroupIDentifIEr调用之前调用’setApplicationID:clIEntKey”之前调用.
我可以通过将Notification Center滑动到“Notifications”选项卡并将其向后滑动来复制此重新加载,这将导致再次调用vIEwDIDLoad.
我已经仔细检查过调用方法的顺序是正确的,甚至修改了订单,但我仍然遇到了崩溃.
有任何想法吗?提前致谢!
解决方法 试试这个if(![Parse isLocalDatastoreEnabled]) { [Parse enableLocalDatastore]; [Parse enableDataSharingWithApplicationGroupIDentifIEr:@"group.com.me.myapp" containingApplication:@"com.me.myapp"]; [Parse setApplicationID:@"myAppID" clIEntKey:@"myClIEntID"];}总结
以上是内存溢出为你收集整理的在iOS 8 Today Extension中获取parse.com用户数据时出现异常全部内容,希望文章能够帮你解决在iOS 8 Today Extension中获取parse.com用户数据时出现异常所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)