Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

GPSTracker как Service - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Spinner http://www.cyberforum.ru/android-dev/thread1456825.html
кто знает как сделать так чтобы при выборе пункта из Spinner выполнялся отдельный кусок кода? в моем случае есть код для генерации случайных чисел(ключ) и нужно сделать так чтобы при выборе длины...
Программирование Android Удаление записей из таблицы Когда удалял последнюю запись из таблицы из БД все работало норм! А когда удалили запись к примеру под №1, после попытался вывести данные - ошибка! С чем это связано? db.delete("mytable", "id = " +... http://www.cyberforum.ru/android-dev/thread1456771.html
Программирование Android Генерация Color Palette
Есть ли инструмент который генерирует все остальные цвета (http://www.google.com/design/spec/style/color.html#) при указании лишь PrimaryColor?
Задача: сделать клиент под андроид для существующего сервера на php Программирование Android
Доброго времени суток! Дано: есть сервер ngins c базой данных на mysql. Есть клиент на php, все хорошо работает. Задача: сделать клиент под андроид, в котором реализована часть функций клиента...
Программирование Android Сервисы, биндинг http://www.cyberforum.ru/android-dev/thread1456382.html
Добрый день. Такой вопрос. Использую такой сценарий работы с сервисом: 1. запускаю сервис (startService) 2. подключаюсь к нему(bindService BIND_AUTO_CREATE) 3. запускаю сервис в фереграунде...
Программирование Android Переключение на следующий ListView из предыдущего Ребят, такая проблема. Надо сделать переход по выбранному элементу из одного списка в другой и в нем, к примеру, переход на страницу с описанием выбранного элемента. В хедере наверху должно... подробнее

Показать сообщение отдельно
SkyL1ne_tm
2 / 2 / 0
Регистрация: 06.07.2013
Сообщений: 97
28.05.2015, 15:32  [ТС]
Разобрался с передачей данных через Intent.
Как теперь вызывать сервис, чтобы он регулярно запрашивал местоположение и выполнял другие действия?

Код сервиса:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
public class TrackerService extends Service implements LocationListener {
 
    final String LOG_TAG = "myLogs";
    LocationManager locationManager;
    double latitude, longitude;
    LatLng myPosition;
    Calendar addTimeCalendar;
    String addDate;
    Cursor c = null;
    Location location;
 
    public void onCreate() {
        super.onCreate();
        locationManager = (LocationManager) getSystemService(LOCATION_SERVICE);
 
    }
 
    void locationUpdates () {
        locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,1000 * 45, 25, this);
        Log.d(LOG_TAG, "GPS_Provider request location updates");
        locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 1000 * 45, 25, this);
        Log.d(LOG_TAG, "Network_Provider request location updates");
    }
 
    public int onStartCommand(Intent intent, int flags, int startId) {
        Log.d(LOG_TAG, "onStartCommand");
        locationUpdates();
        getLocation(location);
        return super.onStartCommand(intent, flags, startId);
    }
 
    @Override
    public void onLocationChanged(Location location) {
        getLocation(location);
    }
 
    @Override
    public void onStatusChanged(String provider, int status, Bundle extras) {
    }
 
    @Override
    public void onProviderEnabled(String provider) {
        getLocation(locationManager.getLastKnownLocation(provider));
    }
 
    @Override
    public void onProviderDisabled(String provider) {
    }
 
    public void getLocation(Location location) {
                if (location == null)
                    return;
                if (location.getProvider().equals(LocationManager.GPS_PROVIDER)) {
                    Log.d(LOG_TAG, "GPS Provider Enabled");
                    latitude = location.getLatitude();
                    longitude = location.getLongitude();
                    myPosition = new LatLng(latitude,longitude);
                    Log.d(LOG_TAG, "______in getLocation______");
                    Log.d(LOG_TAG, "GPS lat = " + latitude + " GPS lng = " + longitude);
                    addCoordinates();
                    Log.d(LOG_TAG, "---GPS Координаты добавлены---");
 
                    Intent intent = new Intent(MainActivity.BROADCAST_ACTION);
                    intent.putExtra("latitude", latitude);
                    intent.putExtra("longitude", longitude);
                    Log.d(LOG_TAG, "lat = " + latitude + " lng = " + longitude);
                    sendBroadcast(intent);
 
                } else if (location.getProvider().equals(LocationManager.NETWORK_PROVIDER)) {
                    Log.d(LOG_TAG, "NETWORK PROVIDER Enabled");
                    latitude = location.getLatitude();
                    longitude = location.getLongitude();
                    myPosition = new LatLng(latitude,longitude);
                    Log.d(LOG_TAG, "______in getLocation______");
                    Log.d(LOG_TAG, "WIFI lat = " + latitude + " WIFI lng = " + longitude);
                    addCoordinates();
                    Log.d(LOG_TAG, "---Network Координаты добавлены---");
                    Log.d(LOG_TAG, "______before intent______");
 
                    Intent intent = new Intent(MainActivity.BROADCAST_ACTION);
                    intent.putExtra("latitude", latitude);
                    intent.putExtra("longitude", longitude);
                    Log.d(LOG_TAG, "lat = " + latitude + " lng = " + longitude);
                    sendBroadcast(intent);
                }
    }
 
    public void addCoordinates() {
        addTimeCalendar = Calendar.getInstance();
        SimpleDateFormat addDayFormat = new SimpleDateFormat("yyyy-MM-dd");
        addDate = addDayFormat.format(addTimeCalendar.getTime());
        SQL sqlHelper = new SQL(this);
        SQLiteDatabase db = sqlHelper.getWritableDatabase();
        ContentValues cv = new ContentValues();
        Log.d(LOG_TAG, "--- Insert in coordinates: ---");
        cv.put("Latitude", latitude);
        cv.put("Longitude", longitude);
        cv.put("Time", addDate);
        long rowID = db.insert("coordinates", null, cv);
        Log.d(LOG_TAG, "row inserted, ID = " + rowID);
        db.close();
        sqlHelper.close();
    }
 
    public void onDestroy() {
        super.onDestroy();
        stopSelf();
        Log.d(LOG_TAG, "onDestroy");
    }
 
    @Override
    public IBinder onBind(Intent intent) {
        // TODO: Return the communication channel to the service.
        throw new UnsupportedOperationException("Not yet implemented");
    }
 
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru