Guest User

Untitled

a guest
Aug 9th, 2020
39
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.96 KB | None | 0 0
  1. package com.example.serwis;
  2.  
  3. import java.util.Timer;
  4. import java.util.TimerTask;
  5.  
  6. import android.app.Service;
  7. import android.content.Intent;
  8. import android.hardware.Sensor;
  9. import android.hardware.SensorEvent;
  10. import android.hardware.SensorEventListener;
  11. import android.hardware.SensorManager;
  12. import android.os.IBinder;
  13. import android.util.Log;
  14. import android.view.LayoutInflater;
  15. import android.view.View;
  16. import android.widget.TextView;
  17. import android.widget.Toast;
  18.  
  19. public class MyService extends Service implements SensorEventListener {
  20. private Toast toast;
  21. private Timer timer;
  22. private TimerTask timerTask;
  23. private TextView textViewSteps;
  24. private SensorManager sensorManager;
  25. private Sensor mineSensor;
  26. int Steps;
  27.  
  28. @Override
  29. public void onSensorChanged(SensorEvent sensorEvent) {
  30. if (sensorEvent.sensor == mineSensor) {
  31. Steps= (int) sensorEvent.values[0];
  32. textViewSteps.setText(String.valueOf(Steps));
  33. }
  34. }
  35.  
  36. @Override
  37. public void onAccuracyChanged(Sensor sensor, int i) {
  38.  
  39. }
  40.  
  41. private class MyTimerTask extends TimerTask {
  42. @Override
  43. public void run() {
  44. showToast("Your service is still working");
  45. }
  46. }
  47.  
  48. private void showToast(String text) {
  49. toast.setText(text);
  50. toast.show();
  51. }
  52.  
  53. private void writeToLogs(String message) {
  54. Log.d("HelloServices", message);
  55. }
  56.  
  57. @Override
  58. public void onCreate() {
  59. super.onCreate();
  60. writeToLogs("Called onCreate() method.");
  61. timer = new Timer();
  62. toast = Toast.makeText(this, "", Toast.LENGTH_SHORT);
  63. }
  64.  
  65. @Override
  66. public int onStartCommand(Intent intent, int flags, int startId) {
  67. writeToLogs("Called onStartCommand() methond");
  68. clearTimerSchedule();
  69. initTask();
  70. timer.scheduleAtFixedRate(timerTask, 4 * 1000, 4 * 1000);
  71. showToast("Your service has been started");
  72. return super.onStartCommand(intent, flags, startId);
  73. }
  74.  
  75. private void clearTimerSchedule() {
  76. if(timerTask != null) {
  77. timerTask.cancel();
  78. timer.purge();
  79. }
  80. }
  81.  
  82. private void initTask() {
  83. timerTask = new MyTimerTask();
  84. textViewSteps = findViewById(R.id.textView);
  85. sensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);
  86. if (sensorManager.getDefaultSensor(Sensor.TYPE_STEP_COUNTER) != null) {
  87.  
  88. mineSensor = sensorManager.getDefaultSensor(Sensor.TYPE_STEP_COUNTER);
  89.  
  90. } else {
  91.  
  92. textViewSteps.setText("Brak sensora.");
  93.  
  94. }
  95. }
  96.  
  97. @Override
  98. public void onDestroy() {
  99. writeToLogs("Called onDestroy() method");
  100. clearTimerSchedule();
  101. showToast("Your service has been stopped");
  102. super.onDestroy();
  103. }
  104.  
  105. @Override
  106. public IBinder onBind(Intent arg0) {
  107. return null;
  108. }
  109. }
Advertisement
Add Comment
Please, Sign In to add comment