Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.example.rootshell.motion;
- import android.util.Log;
- import java.io.BufferedReader;
- import java.io.IOException;
- import java.io.InputStream;
- import java.io.InputStreamReader;
- import java.net.ServerSocket;
- import java.net.Socket;
- /**
- * Created by Bryan Cairns on 1/23/17.
- */
- public class TCPServer {
- private Thread socketServerThread;
- private serverThread server;
- public void listen(int port)
- {
- //serverThread server = new serverThread();
- socketServerThread = new Thread(new serverThread());
- //server.port = port;
- socketServerThread.start();
- }
- public void close() {
- if(socketServerThread != null)
- {
- try {
- server.terminate();
- socketServerThread.join();
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
- }
- }
- private class serverThread extends Thread
- {
- public ServerSocket serverSocket;
- public int port = 2000;
- private volatile boolean running = true;
- public void terminate() {
- try {
- //running = false;
- serverSocket.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- @Override
- public void run()
- {
- try {
- Log.d(AppConstants.tag,"Server starting...");
- serverSocket = new ServerSocket(port);
- Log.d(AppConstants.tag,"Server started and listening...");
- while(running)
- {
- Log.d(AppConstants.tag,"Server listening...");
- Socket socket = serverSocket.accept();
- InputStream istream = socket.getInputStream();
- BufferedReader r = new BufferedReader(new InputStreamReader(istream));
- StringBuilder strBuilder = new StringBuilder();
- String line;
- while ((line = r.readLine()) != null) {
- Log.d(AppConstants.tag,"Server reading line: " + line);
- strBuilder.append(line).append('\n');
- Log.d(AppConstants.tag,"Server strBuilder: " + strBuilder.toString());
- socket.close();
- break;
- }
- String command = strBuilder.toString();
- //Do something with the command
- Log.d(AppConstants.tag,"command: " + command);
- }
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement