簡體   English   中英

如何為 xmpp 實現 smack

[英]how to implement smack for xmpp

我試圖讓我的 android 應用程序能夠使用 smack 發送和接收 xmpp 消息,但它不起作用並且連接命令不返回。 我看過幾個代碼示例,但 Smack 有新版本,語法也發生了變化,所以我可能做錯了什么:

在我的 build.graddle 文件中,我使用:

    compile "org.igniterealtime.smack:smack-android-extensions:4.3.0"
    compile "org.igniterealtime.smack:smack-tcp:4.3.0"

我正在嘗試從 myaccount321@xabber.org 向 myaccount456@xabber.org 發送消息 我正在嘗試使用 hot-chilli.net 進行連接(我不介意使用其他服務器))

go 似乎一切都很好,直到 connection.connect() 之后腳本不會在不觸發任何異常的情況下返回。

請告訴我我做錯了什么

TIA

public void sendxmpp(){

XMPPTCPConnectionConfiguration config = null;
    try {
        XMPPTCPConnectionConfiguration.Builder configbuilder = XMPPTCPConnectionConfiguration.builder();
        configbuilder.setUsernameAndPassword("myaccount321","myaccount321pw");
                
        DomainBareJid serviceName = JidCreate.domainBareFrom("hot-chilli.net");
        configbuilder.setServiceName(serviceName);
        configbuilder.setSecurityMode(ConnectionConfiguration.SecurityMode.disabled)
        configbuilder.setHost("jabber.hot-chilli.net");       
        configbuilder.setPort(8222);
        config=configbuilder.build();
        AbstractXMPPConnection connection = new XMPPTCPConnection(config);
        try {
            connection.connect();
            } 
       catch (SmackException e) {
             e.printStackTrace();
            } 
       catch (IOException e) {
            e.printStackTrace();
        } 
       catch (XMPPException e) {
            e.printStackTrace();
        } 
       catch (InterruptedException e) {
            e.printStackTrace();
        }
       connection.login();

       ChatManager chatManager = ChatManager.getInstanceFor(connection);
        
       EntityBareJid jid = JidCreate.entityBareFrom("myaccount321pw@xabber.org");
       Chat chat = chatManager.createChat(jid);
        
       chat.sendMessage("Hello");
        

      } 
      catch (Exception e) {
        
     }
  } 
    
    

好的,我明白了,連接過程必須在它自己的線程中完成。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM