2014-02-11 115 views
0
public class MainActivity extends Activity { 
    Button reply; 
    EditText say; 
    String username; 
    private ListView listView; 
    XMPPConnection connection=HomeScreen.connection; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     setContentView(R.layout.chatbos_listview); 
     listView = (ListView) findViewById(R.id.listview); 
     Intent i=getIntent(); 
     username=i.getStringExtra("username"); 
     say=(EditText)findViewById(R.id.reply); 
     reply=(Button)findViewById(R.id.replybtn);  
     reply.setOnClickListener(new OnClickListener() { 
      String text = say.getText().toString(); 

      @Override 
      public void onClick(View view) { 
       Message msg = new Message(username, Message.Type.chat); 
       msg.setBody(text);    
       if (connection != null) { 
        connection.sendPacket(msg); 
        //messages.add(text); 
        //setListAdapter(); 
       } 
       System.out.println(connection); 

      } 
     }); 
    } 

基本上它的一個聊天應用程序。我在啓動活動中創建了連接,在此活動中,我從啓動活動獲取連接並將數據發送給用戶。但它不起作用。請指導我。不發送消息使用XMPP

+0

「不起作用」是什麼意思? –

+0

我無法發送消息 –

+0

@selvin它不顯示任何exception.I順利拿到了連接,但我不知道問題出在哪裏。 –

回答

0

把這個代碼的onclick方法 字符串文本內= say.getText()的toString();

+0

只是一個小錯誤。 –

0

發送消息之前,你必須與其他用戶要發送消息的人讀到這裏創建聊天:http://www.igniterealtime.org/builds/smack/docs/latest/documentation/messaging.html

也Asyntask發送短信沒有主界面,否則您的應用程序將獲得崩潰。 。

+0

我添加了該用戶。我從另一個活動獲得了用戶名。 username = i.getStringExtra(「username」); –

+0

你有沒有實現數據包監聽器? –

+0

是的,而且我通過在控制檯上打印它們來確認連接和用戶名的值。它工作正常。但仍然有發送問題。 –