我在谷歌搜索了很多,并在这里找到XMPP客户端的最佳功能API.
我发现了以下两点:
asmack :. http://code.google.com/p/asmack/
patched smack:http://davanum.wordpress.com/2008/12/29/updated-xmpp-client-for-android/
我无法在互联网上找到这两个API的比较,所以也许你可以帮助我选择哪一个.
在补丁的原始文章中,他告知TLS不起作用(很好,我不应该使用它)我消耗其余的工作.另一方面,asmack非常受欢迎,但当我在网上阅读时,似乎它有点多了?
你建议我选择什么?
谢谢!
我是堆栈上的新用户,但我在aSmack库3.2.1 for android中遇到MultiUserChat问题.我正在使用"gtalk.google.com"服务器.这是一个简单的例子,我只是房间里的一个:
String room="myConference@conference.jabber.org";
MultiUserChat muc = new MultiUserChat(connection,room);
muc.join(userNameInRoom);
muc.addMessageListener(new PacketListener()
{
@Override
public void processPacket(Packet packet)
{
...
}
});
Run Code Online (Sandbox Code Playgroud)
后:
muc.sendMessage("Text message");
Run Code Online (Sandbox Code Playgroud)
在日志中:
DEBUG/SMACK(281): 06:46:29 PM SENT (1140866576): <message id="gsMe7-18"
to="myConference@conference.jabber.org" type="groupchat"><body>Text message
</body></message>
DEBUG/SMACK(281): 06:46:29 PM RCV (1140866576): <message
from="myConference@conference.jabber.org/userNameInRoom" to="userName"
type="groupchat"><body>Text message</body></message>
Run Code Online (Sandbox Code Playgroud)
结果:"短信",它是正确的,但随后:
我再次收到了"短信"的存在:
DEBUG/SMACK(281): 06:54:12 PM RCV (1140866576): <presence
from="myConference@conference.jabber.org/userNameInRoom" to="userName"><x xmlns=
"vcard-temp:x:update"><photo/></x><x xmlns="http://jabber.org/protocol/muc#user">
<item affiliation="owner" role="moderator"/><status code="110"/></x></presence>
DEBUG/SMACK(281): 06:54:12 PM RCV (1140866576): <message
from="myConference@conference.jabber.org/userNameInRoom" to="userName"
type="groupchat"><body>Text message</body><delay stamp="2012-02-15T17:46:31Z"
from="myConference@conference.jabber.org" xmlns="urn:xmpp:delay"/><x
stamp="20120215T17:46:31" from="myConference@conference.jabber.org" …Run Code Online (Sandbox Code Playgroud) 我在android中开发聊天应用程序.现在服务器已准备就绪.我想使用XMPP(Jabber)将android应用程序与服务器连接.我有以下信息 -
主持人:108.167.167.22用户:user1 @ skyc密码:111111端口:5222/5280
我怎样才能从android实现?
市场上是否有任何具有类似功能的应用程序(我的意思是我可以连接到服务器并与该应用程序聊天以进行测试)?
提前致谢
我正在查看google talk api,它使用的是XMPP.
这里http://code.google.com/appengine/docs/java/xmpp/overview.html#Sending_Chat_Messages
我正在阅读将它集成到我的Android应用程序中.有没有人知道有关使用Google Talk API与Android的任何好教程?
它还需要集成app-engine吗?
您好每个人我是Android的新手,我目前仍然坚持这一点.我必须返回在xmpp服务器上创建的公共房间列表.我遇到的问题是下面的代码适用于java,但在android的情况下有一个空指针异常.任何有关这方面的帮助将不胜感激.
我正在使用一个openfire服务器并在本地计算机上测试它,这就是我使用IP地址而不是域名的原因.
我正在使用smack库为JAVA和Asmack Library for android
String server_name = "192.168.3.113";
ConnectionConfiguration config = new ConnectionConfiguration(
server_name, 5222);
XMPPConnection connection = new XMPPConnection(config);
try {
connection.connect();
connection.login("s1", "123");
Collection<HostedRoom> rooms = MultiUserChat.getHostedRooms(
connection, "conference.geekoid");
for (HostedRoom room : rooms) {
System.out.println(room.getName());
}
} catch (XMPPException e) {
System.out.println("Error" + e.getMessage() + "\n"); //for JAVA
log.e("Android Error",e.getmessage()); // For Android
}
Run Code Online (Sandbox Code Playgroud) 我正在按照教程与Android Studio制作一个非常基本的聊天应用程序,但我收到错误:
错误:(131,45)错误:XMPPConnection是抽象的; 无法实例化
在以下行:
ConnectionConfiguration connConfig = new ConnectionConfiguration(HOST, PORT, SERVICE);
XMPPConnection connection = new XMPPConnection(connConfig);
Run Code Online (Sandbox Code Playgroud)
当我尝试使用XMPPConnection元素时,我也得到一些"未处理的异常".
还链接到教程:LINK
这是关于发布在这里
我能够将我的PC连接到本地的本地tigase服务器设置(我正在使用Smack API).现在,当我想通过Wi-Fi将Android Phone连接到该服务器时,我遇到了问题.我能够通过使用客户端Beem连接到本地服务器android.My XMPP服务器的域名是我的PC名称"mwbn43-1",IP地址是"192.168.0.221"(我能够ping这个服务器从Android终端模拟器).在Beem设置中有一个高级选项,我可以指定我要连接的服务器(我已经将其作为IP地址).如果我没有设置此选项,我无法conect.Now这里是的片段代码我用于我的Android客户端.
XMPPConnection.DEBUG_ENABLED = true;
ConnectionConfiguration config = new ConnectionConfiguration("mwbn43-1",5222);
//ConnectionConfiguration config = new ConnectionConfiguration("192.168.0.221",5222);
config.setSASLAuthenticationEnabled(false);
config.setCompressionEnabled(false);
XMPPConnection xmpp = new XMPPConnection(config);
try {
xmpp.connect();
xmpp.login("admin@mwbn43-1", "tigase");
String host = xmpp.getHost();
String id = xmpp.getConnectionID();
int port = xmpp.getPort();
boolean i = false;
i = xmpp.isConnected();
if(i)
{answer = "Connected to " + host + " via port " + port + " with ID " + id;
answerfield.setText(answer);}
}//end try
catch (XMPPException e) {
answerfield.setText("Failed …Run Code Online (Sandbox Code Playgroud) 我正在开发一个关于android的聊天应用程序,我需要一个与openfire一起工作的xmpp聊天客户端......任何人都可以建议我这个吗?
我正在创建一个聊天应用程序,我想知道我是否应该使用服务以及它将如何影响我的应用程序的生命周期.据我所知,如果内存不足,Android操作系统可能会破坏我的应用程序.我的问题:如果Android销毁它们或者我是否需要STICKY服务,那么仅使用活动和接收器的应用程序会重新启动吗?我用两者都创建了应用程序,所以我有点想法,但我只是想确定一下.
其次,http://developer.android.com/reference/android/app/Service.html说:
请注意,服务与其他应用程序对象一样,在其托管进程的主线程中运行.这意味着,如果您的服务要进行任何CPU密集型(例如MP3播放)或阻止(例如网络)操作,它应该生成自己的线程来执行该工作.
我的应用程序有一个长时间运行的线程(AsyncTask),它从服务器读取(并不断阻塞).最好不要使用服务并使用AsyncTask来保持我的应用程序原样吗?如果Android选择关闭我的应用,这将如何影响应用的生命周期?如果没有必要,我是否应该提供长期服务,这是不错的做法,如果我应该制作一个STICKY服务呢?我注意到很多聊天和txt msg应用都使用了粘性服务.我只是想想我的应用程序是否需要一个.
再次感谢您!
可能重复:
Android和XMPP:当前可用的解决方案
任何人都可以告诉我有关XMPP到android的实现.如何开始,从哪个点开始.请与我分享任何有用的链接或代码片段.