2011-08-04 7 views
2

私はアンドロイド開発で新しいです、私はサーバーに接続してコマンドを送信するコードを持っています メソッド内の接続コードを分離し、別の方法でコードを送信する方法。 私のコードは次のように:私のコードを多くの方法に分けるには?

public void onClick(View arg0) { 
// TODO Auto-generated method stub 
Socket socket = null; 
DataOutputStream dataOutputStream = null; 
DataInputStream dataInputStream = null; 

try { 
// connect code   
    socket = new Socket("172.16.149.64", 8888); 

// sending code 
    dataInputStream = new DataInputStream(socket.getInputStream()); 
    dataOutputStream = new DataOutputStream(socket.getOutputStream()); 
    dataOutputStream.writeUTF(textOut.getText().toString()); 
    textIn.setText(dataInputStream.readUTF()); 
} catch (UnknownHostException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
} catch (IOException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
} 
finally{ 

    if (dataOutputStream != null){ 
    try { 
    dataOutputStream.close(); 
    } catch (IOException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
    } 
    } 

    if (dataInputStream != null){ 
    try { 
    dataInputStream.close(); 
    } catch (IOException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
    } 
    } 

    if (socket != null){ 
     try { 
     socket.close(); 
     } catch (IOException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
     } 
     } 

} 
} 
+0

私の問題は、別のメソッドにあるコードの呼び出し(socket.getOutputStream())です。 – user875264

答えて

0

独自のクラスを作成し、そのメンバ変数のSocketものを作ります。両方のメソッドで同じソケットを使用して、connect()sendData()のメソッドをクラスに書き込むことができます。

+0

私は初心者です。それを行うには詳細が必要です。 – user875264

+0

メインクラスからconnect()とsendData()を呼び出す方法は? – user875264

+0

あなたのプログラムをクラス分けして、別々の問題に対処することです。オブジェクト指向設計のチュートリアルを参照してください。私はあなたの特定の問題をここでは詳しく説明することができません。 – otto

関連する問題