You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

MainActivity.java 6.4KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139
  1. package com.example.greenwatch;
  2. import androidx.appcompat.app.AppCompatActivity;
  3. import androidx.lifecycle.Observer;
  4. import androidx.lifecycle.ViewModelProvider;
  5. import android.content.Intent;
  6. import android.os.Bundle;
  7. import android.view.View;
  8. import android.widget.Button;
  9. import android.widget.TextView;
  10. import android.widget.Toast;
  11. import com.example.greenwatch.models.Device;
  12. import com.example.greenwatch.viewmodels.MainActivityViewModel;
  13. import java.util.List;
  14. public class MainActivity extends AppCompatActivity {
  15. private TextView tvstatusmessage;
  16. private Button audiodetectionButton;
  17. private Button videodetectionButton;
  18. private Button accelerometerButton;
  19. private Button audiodetectionAndAccelerometerButton;
  20. private Button videodetectionAndAccelerometerButton;
  21. private Button connectionButton;
  22. private MainActivityViewModel mMainActivityViewModel;
  23. @Override
  24. protected void onCreate(Bundle savedInstanceState) {
  25. super.onCreate(savedInstanceState);
  26. setContentView(R.layout.activity_main);
  27. tvstatusmessage = (TextView) findViewById(R.id.tvStatusmessage);
  28. audiodetectionButton = (Button) findViewById(R.id.audiodetectionButton);
  29. videodetectionButton = (Button) findViewById(R.id.videodetectionButton);
  30. accelerometerButton = (Button) findViewById(R.id.accelerometerButton);
  31. audiodetectionAndAccelerometerButton = (Button) findViewById(R.id.audiodetectionAndAccelerometerButton);
  32. videodetectionAndAccelerometerButton = (Button) findViewById(R.id.videodetectionAndAccelerometerButton);
  33. connectionButton = (Button) findViewById(R.id.connectionButton);
  34. mMainActivityViewModel = new ViewModelProvider(this).get(MainActivityViewModel.class);
  35. mMainActivityViewModel.init();
  36. mMainActivityViewModel.getConnectedDeviceList().observe(this, new Observer<List<Device>>() {
  37. @Override
  38. public void onChanged(List<Device> devices) {
  39. StringBuilder sb = new StringBuilder();
  40. sb.append("Time Stamp: ");
  41. sb.append(mMainActivityViewModel.getTimeStamp(mMainActivityViewModel.getLocalDeviceUUID()));
  42. sb.append(";\n");
  43. sb.append("DeviceID: ");
  44. sb.append(mMainActivityViewModel.getDeviceID(mMainActivityViewModel.getLocalDeviceUUID()));
  45. sb.append(";\n");
  46. sb.append("Sensor Status: ");
  47. sb.append(mMainActivityViewModel.getSensorStatus(mMainActivityViewModel.getLocalDeviceUUID()));
  48. sb.append(";\n");
  49. sb.append("Sensor Type: ");
  50. sb.append(mMainActivityViewModel.getSensorType(mMainActivityViewModel.getLocalDeviceUUID()));
  51. sb.append(";\n");
  52. sb.append("Sensor Massage: ");
  53. sb.append(mMainActivityViewModel.getSensorMassage(mMainActivityViewModel.getLocalDeviceUUID()));
  54. tvstatusmessage.setText(sb);
  55. Toast.makeText(MainActivity.this, "onChanged", Toast.LENGTH_LONG).show();
  56. }
  57. });
  58. audiodetectionButton.setOnClickListener(new View.OnClickListener() {
  59. @Override
  60. public void onClick(View v) {
  61. //openAudiodetectionActivity();
  62. mMainActivityViewModel.setDevice(mMainActivityViewModel.getLocalDeviceUUID(), "10:51", "12345", false, "Audio", 10);
  63. }
  64. });
  65. videodetectionButton.setOnClickListener(new View.OnClickListener() {
  66. @Override
  67. public void onClick(View v) {
  68. //openVideodetectionActivity();
  69. mMainActivityViewModel.setSensorType(mMainActivityViewModel.getLocalDeviceUUID(), "Video");
  70. mMainActivityViewModel.setTimeStamp(mMainActivityViewModel.getLocalDeviceUUID(), "12:50");
  71. mMainActivityViewModel.setDeviceID(mMainActivityViewModel.getLocalDeviceUUID(), mMainActivityViewModel.getLocalDeviceUUID());
  72. }
  73. });
  74. accelerometerButton.setOnClickListener(new View.OnClickListener() {
  75. @Override
  76. public void onClick(View v) {
  77. //openAccelerometerActivity();
  78. mMainActivityViewModel.setSensorType(mMainActivityViewModel.getLocalDeviceUUID(), "Accelerometer");
  79. mMainActivityViewModel.setTimeStamp(mMainActivityViewModel.getLocalDeviceUUID(), "24:00");
  80. }
  81. });
  82. audiodetectionAndAccelerometerButton.setOnClickListener(new View.OnClickListener() {
  83. @Override
  84. public void onClick(View v) {
  85. //openAudiodetectionAndAccelerometerActivity();
  86. mMainActivityViewModel.setSensorType(mMainActivityViewModel.getLocalDeviceUUID(), "AudiodetectionAndAccelerometer");
  87. mMainActivityViewModel.setTimeStamp(mMainActivityViewModel.getLocalDeviceUUID(), "00:00");
  88. mMainActivityViewModel.setDeviceID(mMainActivityViewModel.getLocalDeviceUUID(), "6789");
  89. }
  90. });
  91. videodetectionAndAccelerometerButton.setOnClickListener(new View.OnClickListener() {
  92. @Override
  93. public void onClick(View v) {
  94. openVideodetectionAndAccelerometerActivity();
  95. }
  96. });
  97. connectionButton.setOnClickListener(new View.OnClickListener() {
  98. @Override
  99. public void onClick(View v) {
  100. openConnectionActivity();
  101. }
  102. });
  103. }
  104. public void openAudiodetectionActivity(){
  105. Intent intent = new Intent(this, AudiodetectionActivity.class);
  106. startActivity(intent);
  107. }
  108. public void openVideodetectionActivity(){
  109. Intent intent = new Intent(this, VideodetectionActivity.class);
  110. startActivity(intent);
  111. }
  112. public void openAccelerometerActivity(){
  113. Intent intent = new Intent(this, AccelerometerActivity.class);
  114. startActivity(intent);
  115. }
  116. public void openAudiodetectionAndAccelerometerActivity(){
  117. Intent intent = new Intent(this, AudiodetectionAndAccelerometerActivity.class);
  118. startActivity(intent);
  119. }
  120. public void openVideodetectionAndAccelerometerActivity(){
  121. Intent intent = new Intent(this, VideodetectionAndAccelerometerActivity.class);
  122. startActivity(intent);
  123. }
  124. public void openConnectionActivity(){
  125. Intent intent = new Intent(this, ConnectionActivity.class);
  126. startActivity(intent);
  127. }
  128. }