麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

XMPP增加刪除好友

2019-11-14 18:41:56
字體:
供稿:網(wǎng)友

  在現(xiàn)階段的通信服務(wù)中,各種標(biāo)準(zhǔn)都有,因此會(huì)出現(xiàn)無法實(shí)現(xiàn)相互連通,而XMPP(Extensible Message and PResence Protocol)協(xié)議的出現(xiàn),實(shí)現(xiàn)了整個(gè)及時(shí)通信服務(wù)協(xié)議的互通。有了這個(gè)協(xié)議之后,使用任何一個(gè)組織或者個(gè)人提供的即使通信服務(wù),都能夠無障礙的與其他的及時(shí)通信服務(wù)的用戶進(jìn)行交流。例如google 公司2005年推出的Google talk就是一款基于XMPP協(xié)議的即時(shí)通信軟件。下面我們就談?wù)撘幌氯绾魏唵蔚氖褂?span style="mso-ascii-theme-font: minor-latin; mso-fareast-theme-font: minor-fareast; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋體;" lang="EN-US">XMPP的好友添加

1、在XMPPFramework.h中將需要用到的頭文件打開

 

2、在storyboard創(chuàng)建好友列表界面和增加好友界面

 創(chuàng)建和增加的時(shí)候應(yīng)該注意兩者之間的連線:

 

3、定義查詢結(jié)果存儲(chǔ)器并且進(jìn)行初始化

NSFetchedResultsController * fetch;    AppDelegate * delegate=[UIapplication sharedApplication].delegate;            //獲取上下文    NSManagedObjectContext * context=[delegate.rosterStorage mainThreadManagedObjectContext];        //獲取請(qǐng)求NSFetchRequest    NSFetchRequest * request=[NSFetchRequest fetchRequestWithEntityName:@"XMPPUserCoreDataStorageObject"];        //增加排序字段    NSSortDescriptor * des=[NSSortDescriptor sortDescriptorWithKey:@"sectionNum" ascending:YES];    [request setSortDescriptors:@[des]];        //對(duì)fetch進(jìn)行初始化    fetch=[[NSFetchedResultsController alloc] initWithFetchRequest:request managedObjectContext:context sectionNameKeyPath:@"sectionNum" cacheName:nil];        //設(shè)置代理    [fetch setDelegate:self];        //開始查詢    [fetch performFetch:nil];

4、創(chuàng)實(shí)現(xiàn)tableView的代理方法

#pragma mark - Table view data source- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {    return fetch.sections.count;}- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {     id<NSFetchedResultsSectionInfo> sections=fetch.sections[section];    return [sections numberOfObjects] ;}- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {        UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"tabble" ];     XMPPUserCoreDataStorageObject * user=[fetch objectAtIndexPath:indexPath];    cell.textLabel.text=user.displayName;            return cell;}//返回分組數(shù)據(jù)信息,根據(jù)字段type來控制當(dāng)前的狀態(tài)-(NSString *) tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section{      id<NSFetchedResultsSectionInfo> info= [[fetch sections] objectAtIndex:section];    NSString * type=nil;        if ([info.name isEqualToString:@"0"]) {        type=@"在線";    }else {         type=@"離線";    }        return type;}

5、刪除好友

 

-(BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath{    return YES;}//通過花名冊(cè)對(duì)象對(duì)當(dāng)前的好友進(jìn)行刪除操作-(void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath{    if (editingStyle==UITableViewCellEditingStyleDelete) {        AppDelegate * delegate=[UIApplication sharedApplication] .delegate;                XMPPUserCoreDataStorageObject * user=[fetch objectAtIndexPath:indexPath];                [delegate.roster removeUser:user.jid];            }}

6、增加好友

- (IBAction)add {    //獲取好友名稱    NSString * name=self.friends.text;     //獲取好友名稱    AppDelegate * delegate=[UIApplication sharedApplication].delegate;    XMPPJID * jid=[XMPPJID jidWithString:name];    if ([delegate.rosterStorage userExistsWithJID:jid xmppStream:delegate.stream]) {        NSLog(@"好友已經(jīng)存在了");    }else{        //增加好友        [delegate.roster subscribePresenceToUser:jid];    }}

 

  想要了解更多內(nèi)容的小伙伴,可以點(diǎn)擊查看源碼,親自運(yùn)行測(cè)試。

  疑問咨詢或技術(shù)交流,請(qǐng)加入官方QQ群:JRedu技術(shù)交流 (452379712)

 

作者:杰瑞教育
出處:http://www.companysz.com/jerehedu/ 
本文版權(quán)歸煙臺(tái)杰瑞教育科技有限公司和博客園共有,歡迎轉(zhuǎn)載,但未經(jīng)作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責(zé)任的權(quán)利。
 

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 久久成人精品视频 | 激情小说激情图片激情电影 | 国产美女精品视频 | av电影在线免费观看 | 欧美一区二区三区久久精品视 | 日韩av日韩 | 黄色特级视频 | 日本网站一区二区三区 | 污视频在线看 | 亚洲国产精品一区二区久久 | 在线成人免费网站 | 黄色片在线播放 | 免费黄色大片网站 | 中文字幕国 | 久久精品中文字幕一区二区 | 91九色视频在线播放 | 国产精品久久久久久久久久三级 | 成人一级毛片 | 国产chinesehd精品91 | 在线观看中文字幕av | 污污黄 | 亚洲一级网站 | 国产亚洲精品久久久闺蜜 | av影院在线播放 | 99欧美视频| 黄视频网站免费在线观看 | 精品一区二区在线观看视频 | 女教师~淫辱の动漫在线 | 色婷婷一区二区三区 | 亚洲成人精品久久久 | 免费一级特黄毛片视频 | 国产毛毛片一区二区三区四区 | 狠狠操视频网站 | 毛片一级视频 | 精品欧美一区二区精品久久 | 久久精品性视频 | 一区二区网 | 成人在线观看地址 | 国产在线一级片 | 少妇色诱麻豆色哟哟 | 国产一精品一av一免费爽爽 |