1 package com.example.lede2;
\r
3 import android.content.Context;
\r
4 import android.content.Intent;
\r
5 import android.net.ConnectivityManager;
\r
6 import android.net.NetworkInfo;
\r
7 import android.net.wifi.WifiManager;
\r
8 import android.support.v7.app.AppCompatActivity;
\r
9 import android.os.Bundle;
\r
10 import android.util.Log;
\r
11 import android.view.View;
\r
12 import android.widget.Button;
\r
13 import android.widget.TextView;
\r
14 import android.widget.Toast;
\r
16 public class MainActivity extends AppCompatActivity implements View.OnClickListener {
\r
18 Button registerButton;
\r
20 Button insertDBButton;
\r
21 Button deleteDBButton;
\r
22 Button configButton;
\r
23 Button relationButton;
\r
25 protected static Context context;
\r
26 protected static String DEF_RSSID;
\r
27 protected static String DEF_RPWD;
\r
28 protected static String DEF_ROUTERIP;
\r
29 protected static String DEF_ROUTERUSER;
\r
30 protected static String DEF_MYSQLHOSTUSER;
\r
31 protected static String DEF_MYSQLHOSTIP;
\r
32 protected static String DEF_MYSQLHOSTPASSWORD;
\r
33 protected static String DEF_CHANGE_DEFAULT_SCRIPT;
\r
34 protected static String DEF_CONNECT_DEVICE_SCRIPT;
\r
35 protected static String DEF_REGISTER_DEVICE_SCRIPT;
\r
36 protected static String DEF_ADD_DEVICE_FILE;
\r
37 protected static String DEF_ADD_DEVICE_ADDRESS_FILE;
\r
38 protected static String DEF_ADD_DEVICE_COMM_FILE;
\r
39 protected static String DEF_ADD_DEVICE_TO_MYSQL;
\r
40 protected static String DEF_MYSQL_CONFIG_FILE;
\r
41 protected static String DEF_INSTALL_CMD;
\r
42 protected static String DEF_DELETE_CMD;
\r
43 protected static String DEF_INSTALL_ADDRESS_CMD;
\r
44 protected static String DEF_DELETE_ADDRESS_CMD;
\r
45 protected static String DEF_INSTALL_RELATION_CMD;
\r
48 protected void onCreate(Bundle savedInstanceState) {
\r
49 super.onCreate(savedInstanceState);
\r
50 setContentView(R.layout.activity_main);
\r
52 registerButton = (Button) findViewById(R.id.register);
\r
53 listButton = (Button) findViewById(R.id.list);
\r
54 insertDBButton = (Button) findViewById(R.id.insert_db);
\r
55 deleteDBButton = (Button) findViewById(R.id.delete_db);
\r
56 configButton = (Button) findViewById(R.id.config);
\r
57 relationButton = (Button) findViewById(R.id.add_comm);
\r
58 ssid = (TextView)findViewById(R.id.device_subtype);
\r
60 registerButton.setOnClickListener(this);
\r
61 listButton.setOnClickListener(this);
\r
62 insertDBButton.setOnClickListener(this);
\r
63 deleteDBButton.setOnClickListener(this);
\r
64 configButton.setOnClickListener(this);
\r
65 relationButton.setOnClickListener(this);
\r
67 context = getApplicationContext();
\r
68 DEF_RSSID = context.getResources().getString(R.string.default_rssid);
\r
69 DEF_RPWD = context.getResources().getString(R.string.default_rpwd);
\r
70 DEF_ROUTERIP = context.getResources().getString(R.string.default_routerip);
\r
71 DEF_ROUTERUSER = context.getResources().getString(R.string.default_routeruser);
\r
72 DEF_CHANGE_DEFAULT_SCRIPT = context.getResources().getString(R.string.change_default_script);
\r
73 DEF_CONNECT_DEVICE_SCRIPT = context.getResources().getString(R.string.connect_device_script);
\r
74 DEF_REGISTER_DEVICE_SCRIPT = context.getResources().getString(R.string.register_device_script);
\r
75 DEF_ADD_DEVICE_FILE = context.getResources().getString(R.string.add_device_file);
\r
76 DEF_ADD_DEVICE_ADDRESS_FILE = context.getResources().getString(R.string.add_device_address_file);
\r
77 DEF_ADD_DEVICE_COMM_FILE = context.getResources().getString(R.string.add_device_comm_file);
\r
78 DEF_MYSQLHOSTUSER = context.getResources().getString(R.string.mysql_hostuser);
\r
79 DEF_MYSQLHOSTIP = context.getResources().getString(R.string.mysql_hostip);
\r
80 DEF_MYSQLHOSTPASSWORD = context.getResources().getString(R.string.mysql_hostpassword);
\r
81 DEF_ADD_DEVICE_TO_MYSQL = context.getResources().getString(R.string.add_device_to_mysql);
\r
82 DEF_MYSQL_CONFIG_FILE = context.getResources().getString(R.string.mysql_config_file);
\r
83 DEF_INSTALL_CMD = context.getResources().getString(R.string.install_cmd);
\r
84 DEF_DELETE_CMD = context.getResources().getString(R.string.delete_cmd);
\r
85 DEF_INSTALL_ADDRESS_CMD = context.getResources().getString(R.string.install_address_cmd);
\r
86 DEF_DELETE_ADDRESS_CMD = context.getResources().getString(R.string.delete_address_cmd);
\r
87 DEF_INSTALL_RELATION_CMD = context.getResources().getString(R.string.add_comm_cmd);
\r
88 ssid.setText(DEF_RSSID);
\r
91 public void onClick(View v) {
\r
93 if(v == configButton){
\r
94 startActivityForResult(new Intent(this,ConfigActivity.class),1000);
\r
97 //Users try to execute shell scripts by pushing button,
\r
98 //but problem could occur(application stop) if user push the button without wifi connection
\r
99 //As a result, below function have to be implemented.
\r
100 if (isNetworkAvailable() == false) {//without wifi connection
\r
101 Toast t = Toast.makeText(this, R.string.connect, Toast.LENGTH_SHORT);
\r
103 startActivity(new Intent(WifiManager.ACTION_PICK_WIFI_NETWORK));
\r
104 } else {//with wifi connection
\r
105 if (v == registerButton) {
\r
106 Log.d("CLICKING", "Clicking on register!");
\r
107 startActivity(new Intent(this, EnrollDeviceActivity.class));
\r
108 //startActivity(new Intent(this, AddDeviceActivity.class));
\r
109 } else if (v == listButton) {
\r
110 Log.d("CLICKING", "Clicking on list activity!");
\r
111 startActivity(new Intent(this, ListActivity.class));
\r
112 } else if (v == insertDBButton) {
\r
113 Log.d("CLICKING", "Clicking on add device!");
\r
114 startActivity(new Intent(this, AddDeviceActivity.class));
\r
115 } else if (v == deleteDBButton) {
\r
116 Log.d("CLICKING", "Clicking on delete device!");
\r
117 startActivity(new Intent(this, DeleteDeviceActivity.class));
\r
118 } else if (v == relationButton) {
\r
119 Log.d("CLICKING", "Clicking on add communication!");
\r
120 startActivity(new Intent(this, AddRelationActivity.class));
\r
125 boolean isNetworkAvailable() {//check whether wifi connection is or not
\r
126 Context context = getApplicationContext();
\r
127 ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
\r
128 NetworkInfo activeNetwork = cm.getActiveNetworkInfo();
\r
129 boolean isConnected = activeNetwork != null && activeNetwork.isConnectedOrConnecting();
\r
130 return isConnected;
\r
134 protected void onActivityResult(int requestCode, int resultCode, Intent data) {
\r
135 super.onActivityResult(requestCode, resultCode, data);
\r
137 if(requestCode == 1000){
\r
138 ssid.setText(ConfigActivity.RSSID);
\r