|
@@ -1,15 +1,20 @@
|
1
|
1
|
package com.example.repeater;
|
2
|
2
|
|
|
3
|
+import android.content.Context;
|
|
4
|
+import android.content.Intent;
|
|
5
|
+import android.graphics.Color;
|
3
|
6
|
import android.support.v7.app.AppCompatActivity;
|
4
|
7
|
import android.os.Bundle;
|
5
|
8
|
import android.util.Log;
|
6
|
9
|
import android.view.View;
|
7
|
10
|
import android.view.ViewGroup;
|
|
11
|
+import android.widget.AdapterView;
|
8
|
12
|
import android.widget.BaseAdapter;
|
9
|
13
|
import android.widget.Button;
|
10
|
14
|
import android.widget.ImageButton;
|
11
|
15
|
import android.widget.ListView;
|
12
|
16
|
import android.widget.TextView;
|
|
17
|
+import android.widget.Toast;
|
13
|
18
|
import android.widget.ToggleButton;
|
14
|
19
|
|
15
|
20
|
import java.io.BufferedReader;
|
|
@@ -23,8 +28,9 @@ import java.net.Socket;
|
23
|
28
|
import java.net.SocketAddress;
|
24
|
29
|
import java.util.ArrayList;
|
25
|
30
|
import java.util.HashMap;
|
|
31
|
+import android.view.View.OnClickListener;
|
26
|
32
|
|
27
|
|
-public class MainActivity extends AppCompatActivity implements Runnable {
|
|
33
|
+public class MainActivity extends AppCompatActivity implements Runnable,OnClickListener {
|
28
|
34
|
private ListView listview_info;
|
29
|
35
|
private ListView listview_rf;
|
30
|
36
|
private ListView listview_info_set;
|
|
@@ -34,14 +40,14 @@ public class MainActivity extends AppCompatActivity implements Runnable {
|
34
|
40
|
PrintWriter out; //서버에 데이터를 전송한다.
|
35
|
41
|
TextView textView_status;
|
36
|
42
|
String data;
|
37
|
|
- Button button_port,button_control;
|
|
43
|
+ Button button_port,button_control,listView_button;
|
|
44
|
+ public Context mContext;
|
38
|
45
|
private Socket socket; //소켓생성
|
39
|
46
|
|
40
|
|
-
|
41
|
47
|
public boolean isConnection_Status() {
|
42
|
48
|
return Connection_Status;
|
43
|
49
|
}
|
44
|
|
-
|
|
50
|
+ public static int DATA_TEST = 0;
|
45
|
51
|
public void setConnection_Status(boolean connection_Status) {
|
46
|
52
|
Connection_Status = connection_Status;
|
47
|
53
|
if(connection_Status){
|
|
@@ -58,16 +64,29 @@ public class MainActivity extends AppCompatActivity implements Runnable {
|
58
|
64
|
|
59
|
65
|
ImageButton imageButton01;
|
60
|
66
|
ImageButton imageButton02;
|
|
67
|
+ public static ListViewAdapter adapter_infor;
|
|
68
|
+ public static ListViewAdapter adapter_rf;
|
|
69
|
+ public static ListViewAdapter adapter_info_set;
|
|
70
|
+ public static ListViewAdapter adapter_rf_set;
|
|
71
|
+
|
|
72
|
+
|
61
|
73
|
@Override
|
62
|
74
|
protected void onCreate(Bundle savedInstanceState) {
|
63
|
75
|
|
64
|
76
|
super.onCreate(savedInstanceState);
|
65
|
77
|
setContentView(R.layout.activity_main);
|
66
|
|
-
|
67
|
|
-
|
|
78
|
+ Log.d("MainActivity / Oncreate 실행","성공");
|
|
79
|
+ DATA_TEST = 33;
|
|
80
|
+ // listview_info_set.setOnItemClickListener(this);
|
|
81
|
+// listview_rf_set.setOnItemClickListener(this);
|
|
82
|
+ listView_button = findViewById(R.id.listView_button);
|
68
|
83
|
imageButton01 = findViewById(R.id.imageButton01);
|
69
|
84
|
imageButton02 = findViewById(R.id.imageButton02);
|
70
|
|
-
|
|
85
|
+ // Adapter 생성
|
|
86
|
+ adapter_infor = new ListViewAdapter();
|
|
87
|
+ adapter_rf = new ListViewAdapter();
|
|
88
|
+ adapter_info_set = new ListViewAdapter();
|
|
89
|
+ adapter_rf_set = new ListViewAdapter();
|
71
|
90
|
listview_info = findViewById(R.id.listview_info);
|
72
|
91
|
listview_rf = findViewById(R.id.listview_rf);
|
73
|
92
|
listview_info_set = findViewById(R.id.listview_info_set);
|
|
@@ -79,85 +98,137 @@ public class MainActivity extends AppCompatActivity implements Runnable {
|
79
|
98
|
button_port = findViewById(R.id.button_port);
|
80
|
99
|
button_control = findViewById(R.id.button_control);
|
81
|
100
|
textView_status = findViewById(R.id.textView_status);
|
82
|
|
- ListView listview ;
|
83
|
|
- ListViewAdapter adapter_infor;
|
84
|
|
- ListViewAdapter adapter_rf;
|
85
|
|
- ListViewAdapter adapter_info_set;
|
86
|
|
- ListViewAdapter adapter_rf_set;
|
|
101
|
+ new Thread(new Runnable() {
|
|
102
|
+ @Override
|
|
103
|
+ public void run() {
|
|
104
|
+ // runOnUiThread를 추가하고 그 안에 UI작업을 한다.
|
|
105
|
+ runOnUiThread(new Runnable() {
|
|
106
|
+ @Override
|
|
107
|
+ public void run() {
|
87
|
108
|
|
88
|
|
- // Adapter 생성
|
89
|
|
- adapter_infor = new ListViewAdapter() ;
|
90
|
|
- adapter_rf = new ListViewAdapter();
|
91
|
|
- adapter_info_set = new ListViewAdapter() ;
|
92
|
|
- adapter_rf_set = new ListViewAdapter();
|
|
109
|
+ }
|
|
110
|
+ });
|
|
111
|
+ }
|
|
112
|
+ }).start();
|
93
|
113
|
|
|
114
|
+ ListView listview;
|
94
|
115
|
// 리스트뷰 참조 및 Adapter달기
|
95
|
116
|
listview = (ListView) findViewById(R.id.listview_info);
|
96
|
117
|
listview.setAdapter(adapter_infor);
|
97
|
118
|
|
98
|
119
|
|
99
|
|
- adapter_infor.addItem("firm info.","0.1Ver","","READ");
|
100
|
|
- adapter_infor.addItem("FPGA Ver.","0.2Ver","","READ");
|
101
|
|
- adapter_infor.addItem("F/W Ver.","0.3Ver","","READ");
|
102
|
|
- adapter_infor.addItem("Config No.","0.4Ver","","READ");
|
103
|
|
- adapter_infor.addItem("Sub Frame No.","0.5Ver","","READ");
|
104
|
|
- adapter_infor.addItem("CH1 TTG","0.6Ver","","READ");
|
105
|
|
- adapter_infor.addItem("CH1 RTG","0.7Ver","","READ");
|
106
|
|
- adapter_infor.addItem("CH2 TTG","0.8Ver","","READ");
|
107
|
|
- adapter_infor.addItem("CH2 RTG","0.9Ver","","READ");
|
108
|
|
- adapter_infor.addItem("CH1 Polarity","1.1Ver","","READ");
|
109
|
|
- adapter_infor.addItem("CH1 Default","1.2Ver","","READ");
|
110
|
|
- adapter_infor.addItem("CH2 Polarity","1.1Ver","","READ");
|
111
|
|
- adapter_infor.addItem("CH2 Default","1.2Ver","","READ");
|
112
|
|
- adapter_infor.addItem("Auto Config","1.3Ver","","READ");
|
|
120
|
+ adapter_infor.addItem("firm info.", "0.1Ver", "", "READ");
|
|
121
|
+ adapter_infor.addItem("FPGA Ver.", "0.2Ver", "", "READ");
|
|
122
|
+ adapter_infor.addItem("F/W Ver.", "0.3Ver", "", "READ");
|
|
123
|
+ adapter_infor.addItem("Config No.", "0.4Ver", "", "READ");
|
|
124
|
+ adapter_infor.addItem("Sub Frame No.", "0.5Ver", "", "READ");
|
|
125
|
+ adapter_infor.addItem("CH1 TTG", "0.6Ver", "", "READ");
|
|
126
|
+ adapter_infor.addItem("CH1 RTG", "0.7Ver", "", "READ");
|
|
127
|
+ adapter_infor.addItem("CH2 TTG", "0.8Ver", "", "READ");
|
|
128
|
+ adapter_infor.addItem("CH2 RTG", "0.9Ver", "", "READ");
|
|
129
|
+ adapter_infor.addItem("CH1 Polarity", "1.1Ver", "", "READ");
|
|
130
|
+ adapter_infor.addItem("CH1 Default", "1.2Ver", "", "READ");
|
|
131
|
+ adapter_infor.addItem("CH2 Polarity", "1.1Ver", "", "READ");
|
|
132
|
+ adapter_infor.addItem("CH2 Default", "1.2Ver", "", "READ");
|
|
133
|
+ adapter_infor.addItem("Auto Config", "1.3Ver", "", "READ");
|
113
|
134
|
|
114
|
135
|
listview = (ListView) findViewById(R.id.listview_info_set);
|
115
|
136
|
listview.setAdapter(adapter_info_set);
|
116
|
|
- adapter_info_set.addItem("firm info.","0.1Ver","","READ");
|
117
|
|
- adapter_info_set.addItem("FPGA Ver.","0.2Ver","","READ");
|
118
|
|
- adapter_info_set.addItem("F/W Ver.","0.3Ver","","READ");
|
119
|
|
- adapter_info_set.addItem("Config No.","0.4Ver","","EDIT");
|
120
|
|
- adapter_info_set.addItem("Sub Frame No.","0.5Ver","","EDIT");
|
121
|
|
- adapter_info_set.addItem("CH1 TTG","0.6Ver","","EDIT");
|
122
|
|
- adapter_info_set.addItem("CH1 RTG","0.7Ver","","EDIT");
|
123
|
|
- adapter_info_set.addItem("CH2 TTG","0.8Ver","","EDIT");
|
124
|
|
- adapter_info_set.addItem("CH2 RTG","0.9Ver","","EDIT");
|
125
|
|
- adapter_info_set.addItem("CH1 Polarity","1.1Ver","","BUTTON");
|
126
|
|
- adapter_info_set.addItem("CH1 Default","1.2Ver","","BUTTON");
|
127
|
|
- adapter_info_set.addItem("CH2 Polarity","1.1Ver","","BUTTON");
|
128
|
|
- adapter_info_set.addItem("CH2 Default","1.2Ver","","BUTTON");
|
129
|
|
- adapter_info_set.addItem("Auto Config","1.3Ver","","BUTTON");
|
|
137
|
+ adapter_info_set.addItem("firm info.", "0.1Ver", "", "READ");
|
|
138
|
+ adapter_info_set.addItem("FPGA Ver.", "0.2Ver", "", "READ");
|
|
139
|
+ adapter_info_set.addItem("F/W Ver.", "0.3Ver", "", "READ");
|
|
140
|
+ adapter_info_set.addItem("Config No.", "", "", "EDIT");
|
|
141
|
+ adapter_info_set.addItem("Sub Frame No.", "", "", "EDIT");
|
|
142
|
+ adapter_info_set.addItem("CH1 TTG", "", "", "EDIT");
|
|
143
|
+ adapter_info_set.addItem("CH1 RTG", "", "", "EDIT");
|
|
144
|
+ adapter_info_set.addItem("CH2 TTG", "", "", "EDIT");
|
|
145
|
+ adapter_info_set.addItem("CH2 RTG", "", "", "EDIT");
|
|
146
|
+ adapter_info_set.addItem("CH1 Polarity", "ON", "", "BUTTON");
|
|
147
|
+ adapter_info_set.addItem("CH1 Default", "ON", "", "BUTTON");
|
|
148
|
+ adapter_info_set.addItem("CH2 Polarity", "ON", "", "BUTTON");
|
|
149
|
+ adapter_info_set.addItem("CH2 Default", "ON", "", "BUTTON");
|
|
150
|
+ adapter_info_set.addItem("Auto Config", "MANUAL", "", "BUTTON");
|
|
151
|
+ // 아이템을 [클릭]시의 이벤트 리스너를 등록
|
|
152
|
+/* listview.setOnItemClickListener(new AdapterView.OnItemClickListener() {
|
|
153
|
+ @Override
|
|
154
|
+ public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
|
|
155
|
+ ListView listView = (ListView) parent;
|
130
|
156
|
|
|
157
|
+ //Log.d("data"+position+" OK","성공");
|
|
158
|
+ // TODO 아이템 클릭시에 구현할 내용은 여기에.
|
|
159
|
+ // String item = (String) listView.getItemAtPosition(position);
|
|
160
|
+ String item = Integer.toString(position);
|
|
161
|
+ Toast.makeText(MainActivity.this, item, Toast.LENGTH_LONG).show();
|
|
162
|
+ }
|
|
163
|
+ });*/
|
131
|
164
|
listview = (ListView) findViewById(R.id.listview_rf);
|
132
|
165
|
listview.setAdapter(adapter_rf);
|
133
|
|
- adapter_rf.addItem("input ATT","0.1Ver","","READ");
|
134
|
|
- adapter_rf.addItem("Output ATT","0.2Ver","","READ");
|
135
|
|
- adapter_rf.addItem("Input Offset ATT","0.3Ver","","READ");
|
136
|
|
- adapter_rf.addItem("Output Offset ATT","0.4Ver","","READ");
|
137
|
|
- adapter_rf.addItem("Gain(dB)","0.5Ver","","READ");
|
138
|
|
- adapter_rf.addItem("ALC Level","0.6Ver","","READ");
|
139
|
|
- adapter_rf.addItem("PA Enable","0.7Ver","","READ");
|
140
|
|
- adapter_rf.addItem("EX PA Enable","0.8Ver","","READ");
|
141
|
|
- adapter_rf.addItem("RF PLL Freq","0.9Ver","","READ");
|
142
|
|
- adapter_rf.addItem("AGD Level","1.1Ver","","READ");
|
143
|
|
- adapter_rf.addItem("ISO Level","1.2Ver","","READ");
|
144
|
|
- adapter_rf.addItem("Temperature","1.3Ver","","READ");
|
|
166
|
+ adapter_rf.addItem("input ATT", "0 Dbm", "", "READ");
|
|
167
|
+ adapter_rf.addItem("Output ATT", "0 Dbm", "", "READ");
|
|
168
|
+ adapter_rf.addItem("Input Offset ATT", "0 Dbm", "", "READ");
|
|
169
|
+ adapter_rf.addItem("Output Offset ATT", "0 Dbm", "", "READ");
|
|
170
|
+ adapter_rf.addItem("Gain(dB)", "0 dB", "", "READ");
|
|
171
|
+ adapter_rf.addItem("ALC Level", "0.6Ver", "", "READ");
|
|
172
|
+ adapter_rf.addItem("PA Enable", "0.7Ver", "", "READ");
|
|
173
|
+ adapter_rf.addItem("EX PA Enable", "0.8Ver", "", "READ");
|
|
174
|
+ adapter_rf.addItem("RF PLL Freq", "0.9Ver", "", "READ");
|
|
175
|
+ adapter_rf.addItem("AGD Level", "1.1Ver", "", "READ");
|
|
176
|
+ adapter_rf.addItem("ISO Level", "1.2Ver", "", "READ");
|
|
177
|
+ adapter_rf.addItem("Temperature", "1.3Ver", "", "READ");
|
145
|
178
|
|
146
|
179
|
listview = (ListView) findViewById(R.id.listview_rf_set);
|
147
|
180
|
listview.setAdapter(adapter_rf_set);
|
148
|
|
- adapter_rf_set.addItem("input ATT","","","EDIT2");
|
149
|
|
- adapter_rf_set.addItem("Output ATT","","","EDIT2");
|
150
|
|
- adapter_rf_set.addItem("Input Offset ATT","","","EDIT2");
|
151
|
|
- adapter_rf_set.addItem("Output Offset ATT","","","EDIT2");
|
152
|
|
- adapter_rf_set.addItem("Gain(dB)","","","EDIT2");
|
153
|
|
- adapter_rf_set.addItem("ALC Level","","","EDIT2");
|
154
|
|
- adapter_rf_set.addItem("PA Enable","0.7Ver","","BUTTON");
|
155
|
|
- adapter_rf_set.addItem("EX PA Enable","0.8Ver","","BUTTON");
|
156
|
|
- adapter_rf_set.addItem("RF PLL Freq","","","EDIT");
|
157
|
|
- adapter_rf_set.addItem("AGD Level","","","EDIT");
|
158
|
|
- adapter_rf_set.addItem("ISO Level","1.2Ver","","READ");
|
159
|
|
- adapter_rf_set.addItem("Temperature","1.3Ver","","READ");
|
|
181
|
+ adapter_rf_set.addItem("input ATT", " ", " 1", "EDIT2");
|
|
182
|
+ adapter_rf_set.addItem("Output ATT", " ", " ", "EDIT2");
|
|
183
|
+ adapter_rf_set.addItem("Input Offset ATT", "", " ", "EDIT2");
|
|
184
|
+ adapter_rf_set.addItem("Output Offset ATT", "", " ", "EDIT2");
|
|
185
|
+ adapter_rf_set.addItem("Gain(dB)", " ", " ", "EDIT2");
|
|
186
|
+ adapter_rf_set.addItem("ALC Level", " ", " ", "EDIT2");
|
|
187
|
+ adapter_rf_set.addItem("PA Enable", "ON", "", "BUTTON");
|
|
188
|
+ adapter_rf_set.addItem("EX PA Enable", "ON", "", "BUTTON");
|
|
189
|
+ adapter_rf_set.addItem("RF PLL Freq", "", "", "EDIT");
|
|
190
|
+ adapter_rf_set.addItem("AGD Level", "", "", "EDIT");
|
|
191
|
+ adapter_rf_set.addItem("ISO Level", "1.2Ver", "", "READ");
|
|
192
|
+ adapter_rf_set.addItem("Temperature", "1.3Ver", "", "READ");
|
|
193
|
+ // 아이템을 [클릭]시의 이벤트 리스너를 등록
|
|
194
|
+ /* listview.setOnItemClickListener(new AdapterView.OnItemClickListener() {
|
|
195
|
+ @Override
|
|
196
|
+ public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
|
|
197
|
+ ListView listView = (ListView) parent;
|
|
198
|
+
|
|
199
|
+ //Log.d("data"+position+" OK","성공");
|
|
200
|
+ // TODO 아이템 클릭시에 구현할 내용은 여기에.
|
|
201
|
+ // String item = (String) listView.getItemAtPosition(position);
|
|
202
|
+ String item = Integer.toString(position);
|
|
203
|
+ Toast.makeText(MainActivity.this, item, Toast.LENGTH_LONG).show();
|
|
204
|
+ }
|
|
205
|
+ });
|
|
206
|
+
|
|
207
|
+ // 아이템을 [선택]시의 이벤트 리스너를 등록
|
|
208
|
+ listview.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
|
|
209
|
+ @Override
|
|
210
|
+ public void onItemSelected(AdapterView<?> parent, View view,
|
|
211
|
+ int position, long id) {
|
|
212
|
+ ListView listView = (ListView) parent;
|
|
213
|
+ // TODO 아이템 선택시에 구현할 내용은 여기에.
|
|
214
|
+ String item = (String) listView.getSelectedItem();
|
|
215
|
+ Toast.makeText(MainActivity.this, item, Toast.LENGTH_LONG).show();
|
|
216
|
+ }
|
|
217
|
+ @Override
|
|
218
|
+ public void onNothingSelected(AdapterView<?> parent) {
|
|
219
|
+ }
|
|
220
|
+ });*/
|
|
221
|
+
|
|
222
|
+ }
|
|
223
|
+ /* (non-Javadoc)
|
|
224
|
+ * @see android.widget.AdapterView.OnItemClickListener#onItemClick(android.widget.AdapterView, android.view.View, int, long)
|
|
225
|
+ */
|
|
226
|
+ public void onItemClick (AdapterView < ? > parent, View v,int position, long id)
|
|
227
|
+ {
|
|
228
|
+ Log.d("Click Success : " + adapter_info_set.getItemId(0), "성공");
|
160
|
229
|
}
|
|
230
|
+
|
|
231
|
+
|
161
|
232
|
public void onClick(View view) {
|
162
|
233
|
switch(view.getId()) {
|
163
|
234
|
case R.id.button_port:
|
|
@@ -226,6 +297,7 @@ public class MainActivity extends AppCompatActivity implements Runnable {
|
226
|
297
|
}
|
227
|
298
|
break;
|
228
|
299
|
case R.id.imageButton02:
|
|
300
|
+
|
229
|
301
|
if(textView_status.getText() != "Control") {
|
230
|
302
|
listview_info.setVisibility(view.INVISIBLE);
|
231
|
303
|
listview_info_set.setVisibility(view.INVISIBLE);
|
|
@@ -236,23 +308,54 @@ public class MainActivity extends AppCompatActivity implements Runnable {
|
236
|
308
|
listview_info.setVisibility(view.INVISIBLE);
|
237
|
309
|
listview_info_set.setVisibility(view.INVISIBLE);
|
238
|
310
|
listview_rf_set.setVisibility(view.VISIBLE);
|
239
|
|
-
|
240
|
311
|
listview_rf.setVisibility(view.INVISIBLE);
|
241
|
312
|
}
|
242
|
313
|
break;
|
243
|
314
|
}
|
244
|
315
|
}
|
245
|
316
|
|
|
317
|
+ receive Recv_Context = null;
|
|
318
|
+ public void RecvContext_set(receive context){
|
|
319
|
+ this.Recv_Context =context;
|
|
320
|
+ }
|
|
321
|
+ String Prev_RecvStr;
|
|
322
|
+ public void ListViewDataSet(int position, final String str){
|
|
323
|
+ new Thread(new Runnable() {
|
|
324
|
+ @Override
|
|
325
|
+ public void run() {
|
|
326
|
+ // runOnUiThread를 추가하고 그 안에 UI작업을 한다.
|
|
327
|
+ runOnUiThread(new Runnable() {
|
|
328
|
+ @Override
|
|
329
|
+ public void run() {
|
|
330
|
+ try {
|
|
331
|
+// adapter_rf.removeItem(11);
|
|
332
|
+ if(str != Prev_RecvStr) {
|
|
333
|
+ adapter_rf.setItem("Temperature", str, "", "READ", 11);
|
|
334
|
+ Prev_RecvStr = str;
|
|
335
|
+ adapter_rf.notifyDataSetChanged();
|
|
336
|
+ }
|
|
337
|
+//
|
|
338
|
+ }catch (Exception e){
|
|
339
|
+ Log.e("fail to process file", String.valueOf(e));
|
|
340
|
+ Log.d("ListViewDataSet : ", "I FAILED PUT DATA TRY 4");
|
|
341
|
+ }
|
|
342
|
+ }
|
|
343
|
+ });
|
|
344
|
+ }
|
|
345
|
+ }).start();
|
|
346
|
+
|
|
347
|
+ }
|
246
|
348
|
@Override
|
247
|
349
|
public void run() {
|
248
|
350
|
connect con = new connect(this);
|
249
|
351
|
con.run();
|
250
|
352
|
try {
|
|
353
|
+ Log.d("YJ TEST ", String.valueOf(DATA_TEST));
|
251
|
354
|
Log.d("MainActivity / Run 함수 실행", "성공");
|
252
|
|
- }catch(Exception e){
|
|
355
|
+ } catch (Exception e) {
|
253
|
356
|
Log.e("MainActivity / Run 함수 실행", "실패");
|
254
|
357
|
setConnection_Status(false);
|
255
|
358
|
}
|
256
|
|
-
|
257
|
359
|
}
|
|
360
|
+
|
258
|
361
|
}
|