0
|
1 package com.five_ten_sg.connectbot.monitor;
|
|
2
|
|
3 import java.io.BufferedReader;
|
|
4 import java.io.IOException;
|
|
5 import java.io.InputStreamReader;
|
|
6 import java.net.ServerSocket;
|
|
7 import java.net.Socket;
|
|
8
|
|
9 import android.app.Activity;
|
|
10 import android.content.ComponentName;
|
|
11 import android.content.Context;
|
|
12 import android.content.Intent;
|
|
13 import android.content.ServiceConnection;
|
|
14 import android.net.wifi.WifiManager.WifiLock;
|
|
15 import android.net.wifi.WifiManager;
|
|
16 import android.os.Binder;
|
|
17 import android.os.Bundle;
|
|
18 import android.os.Handler;
|
|
19 import android.os.IBinder;
|
|
20 import android.os.Message;
|
|
21 import android.os.PowerManager;
|
|
22 import android.util.Log;
|
|
23 import android.widget.TextView;
|
|
24
|
|
25 public class MonitorActivity extends Activity {
|
|
26 public final static String TAG = "ConnectBot.MonitorActivity";
|
|
27
|
|
28 public static final int MESSAGE_CODE_PRINT = 6000;
|
|
29 private final int LINES = 20;
|
|
30 private String[] texts = new String[LINES];
|
|
31 private int start = 0;
|
|
32 private int count = 0;
|
|
33 private TextView text = null;
|
|
34 private MonitorService bound = null;
|
|
35 private Handler handler = new Handler() {
|
|
36 @Override
|
|
37 public void handleMessage (Message msg) {
|
|
38 if (msg.what == MESSAGE_CODE_PRINT) {
|
|
39 String s = (String)msg.obj;
|
|
40 if (count < LINES) count++;
|
|
41 else start = (start+1) % LINES;
|
|
42 texts[(start+count-1) % LINES] = s + "\n";
|
|
43 String c = "";
|
|
44 for (int i=0; i<count; i++) c = c.concat(texts[(start+i) % LINES]);
|
|
45 text.setText(c);
|
|
46 } else {
|
|
47 super.handleMessage(msg);
|
|
48 }
|
|
49 }
|
|
50 };
|
|
51 private ServiceConnection connection = new ServiceConnection() {
|
|
52 public void onServiceConnected(ComponentName className, IBinder service) {
|
|
53 Log.i(TAG, "onServiceConnected()");
|
|
54 bound = ((MonitorService.MonitorBinder)service).getService();
|
|
55 bound.handler = handler;
|
|
56 }
|
|
57 public void onServiceDisconnected(ComponentName className) {
|
|
58 Log.i(TAG, "onServiceDisconnected()");
|
|
59 bound = null;
|
|
60 }
|
|
61 };
|
|
62
|
|
63 @Override
|
|
64 public void onCreate(Bundle savedInstanceState) {
|
|
65 super.onCreate(savedInstanceState);
|
|
66 setContentView(R.layout.main);
|
|
67 text = (TextView) findViewById(R.id.text2);
|
|
68 Log.i(TAG, "binding to monitor service");
|
|
69 Intent intent = new Intent ("com.five_ten_sg.connectbot.monitor.MonitorService");
|
|
70 bindService(intent, connection, Context.BIND_AUTO_CREATE);
|
|
71 }
|
|
72
|
|
73 public void printer(String msg) {
|
|
74 handler.sendMessage(handler.obtainMessage(MonitorActivity.MESSAGE_CODE_PRINT, msg));
|
|
75 }
|
|
76
|
|
77 @Override
|
|
78 protected void onStart() {
|
|
79 super.onStart();
|
|
80 printer("activity onStart()");
|
|
81 Log.i(TAG, "activity onStart()");
|
|
82 }
|
|
83
|
|
84 @Override
|
|
85 protected void onRestart() {
|
|
86 super.onRestart();
|
|
87 Log.i(TAG, "activity onRestart()");
|
|
88 }
|
|
89
|
|
90 @Override
|
|
91 protected void onStop() {
|
|
92 super.onStop();
|
|
93 Log.i(TAG, "activity onStop()");
|
|
94 }
|
|
95
|
|
96 @Override
|
|
97 protected void onDestroy() {
|
|
98 Log.i(TAG, "activity onDestroy()");
|
|
99 unbindService(connection);
|
|
100 super.onDestroy();
|
|
101 }
|
|
102 }
|