//使用CoreData获取数据
// 1.关联到数据库XMPPRoster.sqlite
NSManagedObjectContext *context = [WCXMPPTool sharedWCXMPPTool].rosterStorage.mainThreadManagedObjectContext;
// 2.FetchRequest查表
NSFetchRequest *request = [NSFetchRequest fetchRequestWithEntityName:@"XMPPUserCoreDataStorageObject"];
// 3.设置过滤和排序
// 过滤当前登录用户的好友
NSString *jid = [WCUserInfo sharedWCUserInfo].jid;
NSPredicate *pre = [NSPredicate predicateWithFormat:@"streamBareJidStr = %@",jid];
request.predicate = pre;
//排序
NSSortDescriptor *sort = [NSSortDescriptor sortDescriptorWithKey:@"displayName" ascending:YES];
request.sortDescriptors = @[sort];
if (context == nil) {
}else{
// 4.执行请求获取数据
_resultsContrl = [[NSFetchedResultsController alloc] initWithFetchRequest:request managedObjectContext:context sectionNameKeyPath:nil cacheName:nil];
}
_resultsContrl.delegate = self;
NSError *err = nil;
[_resultsContrl performFetch:&err];
if (err) {
}
NSLog(@"%@",_resultsContrl.fetchedObjects);
//好友
NSMutableArray * friendArr = [[NSMutableArray alloc] init];
for (XMPPUserCoreDataStorageObject *friend in _resultsContrl.fetchedObjects) {
[friendArr addObject:friend.jidStr];//friend.jidStr为好友的jid
}
网友评论