2012-01-09 126 views
-1

Im做android的應用程序,它使用套接字編程通過Java服務器程序連接到PC ...運行JAVA程序作爲後臺服務

我需要運行Java服務器程序作爲後臺服務..

有人可以幫我嗎?

ServerSocket serverSocket = null; 
     Socket socket = null; 
     DataInputStream dataInputStream = null; 
     DataOutputStream dataOutputStream = null; 

     try { 
     serverSocket = new ServerSocket(8888); 
     System.out.println("Listening :8888"); 
     } catch (IOException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
     } 

     while(true){ 
     try { 
     socket = serverSocket.accept(); 
     dataInputStream = new DataInputStream(socket.getInputStream()); 
     dataOutputStream = new DataOutputStream(socket.getOutputStream()); 
     System.out.println("ip: " + socket.getInetAddress()); 
     System.out.println("message: " + dataInputStream.readUTF()); 
     //dataOutputStream.writeUTF("Hello!"); 
     //String dataStream = dataInputStream.readUTF(); 
     // System.out.println("message: " + dataStream); 
     //dataOutputStream.writeUTF("Hello!"); 
     c++; 
     dataOutputStream.writeUTF(ss+c); 
     } catch (IOException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
     } 
     finally{ 
     if(socket!= null){ 
     try { 
      socket.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(dataOutputStream!= null){ 
     try { 
      dataOutputStream.close(); 
     } catch (IOException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 

回答

1

是的,您可以使用Java Service Wrapper運行Java應用程序。

+0

可以請你準確,因爲究竟是在做什麼呢???謝謝你利奧... – subrussn90 2012-01-09 06:44:03

0

嘗試將Java代碼作爲一個批處理文件;如果它是一個Windows操作系統...

+0

OP說,「我在做Android應用程序」 – Nishant 2012-01-09 06:45:55

+1

@Nishant:OP說「它連接到一臺PC通過使用套接字編程的Java服務器程序「。他需要運行Java Server程序作爲服務,而不是android應用程序。 – Manish 2012-01-09 06:53:04

3

您將需要「包裝」您的Java應用程序作爲服務運行。這將允許Java程序像其他服務一樣執行。有一些工具可用於此目的。有關更多詳細信息,請參閱 Java Service WrapperYAJSW