![]() ![]() ![]() ![]() |
|||||
|
|||||
樓主 Josh Jhan ![]()
![]() |
目前我能夠做到的就是在ActivityA建立socket然後利用dataoutputstream傳送 然後我在另一支手機寫程式接收,這部分都已經順利完成了 但我發現當我在client端的手機上建立ActivityA與ActivityB 當我intent到ActivityB時,我就無法使用原先在Activity所建立的socket了 這幾天爬了一下文章發現有個叫做singleton的方法 但是研究了幾天還是不太曉得要怎麼利用singleton來實現在不同的activity間建立socket連線... 不知道有沒有什麼教學或者是範例能夠讓我清楚的了解singleton的使用方法... 或者還有沒有其他的方式可以實現在不同的activity間建立socket連線 |
1樓 |
你要不要把你的程式碼貼出來看看呢? ^_^
本篇文章回覆於2015-03-17 08:57
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
2樓
作者回應
Josh Jhan ![]() |
to 阿星:謝謝您的回覆!
下面是我在ActivityA下用來建立socket的code: Button.OnClickListener BtnWifiOnClickListener = new Button.OnClickListener(){ @Override public void onClick(View view) { if(!connected){ try { socket = new Socket("*.*.*.*",port);//建立socket dataOutputStream = new DataOutputStream(socket.getOutputStream());//and stream changeConnectionStatus(true);//change the connection status }catch (UnknownHostException e) { changeConnectionStatus(false); }catch (IOException e) { changeConnectionStatus(false); } }else{ try {//try to close the socket socket.close(); changeConnectionStatus(false);//change the connection status } catch (UnknownHostException e) {//catch and } catch (IOException e) {//catch and } } } }; 動作很簡單就是當我按下BtnWifi時就與server端做連線、建立socket 但這個連線只有在AxtivityA才能使用當我Intent到ActivityB時就無法了... 這幾天有看到一些資料,像是好像要利用AsyncTask來建立socket 然後還有一些像是android.app.Application、server等來達成我的需求 但我對這些方法不是很熟所以現在還在研究
本篇文章回覆於2015-03-17 09:21
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
回覆 |
如要回應,請先登入. |