android 获取好友数量,android+openfire获取好友列表

该代码段展示了一个Android应用中如何初始化XMPP连接,登录到服务器,并获取好友列表。通过设置连接配置,连接到指定IP和端口,然后尝试登录并打印登录状态。如果登录成功,会获取Roster并遍历好友分组和好友详细信息。
摘要由CSDN通过智能技术生成

package com.hyl.openfire;

import java.util.Collection;

import org.jivesoftware.smack.ConnectionConfiguration;

import org.jivesoftware.smack.Roster;

import org.jivesoftware.smack.RosterEntry;

import org.jivesoftware.smack.RosterGroup;

import org.jivesoftware.smack.XMPPConnection;

import org.jivesoftware.smack.XMPPException;

import android.os.Bundle;

import android.app.Activity;

import android.view.Menu;

public class MainActivity extends Activity {

private int PORT=5222;

private static Boolean isLogin=false;

XMPPConnection connection;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

initConnection();

login("hyl1234","hyl1234");

getFriends();

}

@Override

public boolean onCreateOptionsMenu(Menu menu) {

// Inflate the menu; this adds items to the action bar if it is present.

getMenuInflater().inflate(R.menu.main, menu);

return true;

}

private void initConnection(){

ConnectionConfiguration config = new ConnectionConfiguration("192.168.0.104", PORT);

config.setSASLAuthenticationEnabled(false);

connection = new XMPPConnection(config);

try {

connection.connect();

} catch (XMPPException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

public void login(String name,String pass){

try {

connection.login(name, pass);

System.out.println("登录成功");

isLogin=true;

} catch (XMPPException e) {

System.out.println("登录失败");

e.printStackTrace();

}

}

public void getFriends(){

Roster roster = connection.getRoster();

Collection entriesGroup = roster.getGroups();

System.out.println("size--->"+entriesGroup.size());

for(RosterGroup group: entriesGroup){

Collection entries = group.getEntries();

System.out.println("group-->"+group.getName());

for (RosterEntry entry : entries) {

System.out.println("name-->"+entry.getName());

}

}

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值