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

GPS. Слушатель LocationListener - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android GPS. Слушатель LocationListener http://www.cyberforum.ru/android-dev/thread1022356.html
Изменения текущего местоположения сохраняю в файл, сохраняя время и координаты. Потом просматриваю его и выясняется, что записи дублируются по несколько раз. Подозреваю, что это происходит после...
Программирование Android unfortunately has stopped android Я не могу интегрировать карты в Android приложения, действовал по сайту https://developers.google.com/maps/documentation/android/start но у меня выдает ошибку unfortunately has stopped android http://www.cyberforum.ru/android-dev/thread1022037.html
GC при запуске приложение Программирование Android
При запуске приложения в логе вижу череду сообщений о работе GC 11-28 15:13:53.887: D/dalvikvm(1742): GC_CONCURRENT freed 318K, 50% free 3047K/6023K, external 2792K/3486K, paused 1ms+2ms 11-28...
Круг для завершения активности Программирование Android
Здравствуйте! Хочу спросить как можно добиться вот такого результата: Имеется Окружность, а внутри окружности имеется маленькая окружность. Надо создавать 2d графику? Рисовать с помощью canvas? и...
Программирование Android SQLite дополнить записи из таблицы http://www.cyberforum.ru/android-dev/thread1021415.html
Можно ли составить подобный запрос (вроде видел нечто подобное, но повторно найти пример не получилось) Есть таблица AAA. На ее основе делается клон структуры во временную таблицу: CREATE TEMP...
Программирование Android Как программно убрать клавиатуру после нажатия кнопки "Далее"? Здравствуйте, уважаемые форумчане. Я недавно начал изучать android и столкнулся со следующей проблемой: я сделал поле ввода, и после ввода текста я нажимаю в телефоне кнопку далее, но ничего не... подробнее

Показать сообщение отдельно
Gabberr
102 / 102 / 17
Регистрация: 13.10.2009
Сообщений: 403
29.11.2013, 10:12
Я использую сервис
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
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
public class GPSTracker extends Service implements LocationListener {
 
    private final Context mContext;
 
    // flag for GPS status
    boolean isGPSEnabled = false;
 
    // flag for network status
    boolean isNetworkEnabled = false;
 
    public boolean canGetLocation = false;
 
    Location location; // location
    double latitude; // latitude
    double longitude; // longitude
 
    // The minimum distance to change Updates in meters
    private static final long MIN_DISTANCE_CHANGE_FOR_UPDATES = 5; // 5 meters
 
    // The minimum time between updates in milliseconds
    private static final long MIN_TIME_BY_UPDATES = 1000;
 
    // Declaring a Location Manager
    protected LocationManager locationManager;
 
    public GPSTracker(Context context) {
        this.mContext = context;
        getLocation();
    }
 
    public Location getLocation() {
        try {
            locationManager = (LocationManager) mContext.getSystemService(LOCATION_SERVICE);
 
            // getting GPS status
            isGPSEnabled = locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER);
 
            // getting network status
            isNetworkEnabled = locationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER);
 
            if (!isGPSEnabled && !isNetworkEnabled) {
                // no network provider is enabled
            } else {
                this.canGetLocation = true;
 
                // if GPS Enabled get lat/long using GPS Services
                if (isGPSEnabled) {
                    Log.i("GPS", "from gps");
                    if (location == null) {
                        locationManager.requestLocationUpdates(
                                LocationManager.GPS_PROVIDER,
                                MIN_TIME_BY_UPDATES,
                                MIN_DISTANCE_CHANGE_FOR_UPDATES, this);
                        Log.d("GPS Enabled", "GPS Enabled");
                        if (locationManager != null) {
                            location = locationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);
                            if (location != null) {
                                latitude = location.getLatitude();
                                longitude = location.getLongitude();
                            }
                        }
                    }
                }
                // second get location from Network Provider
                if (isNetworkEnabled) {
                    Log.i("GPS", "from net");
                    locationManager.requestLocationUpdates(
                            LocationManager.NETWORK_PROVIDER,
                            MIN_TIME_BY_UPDATES,
                            MIN_DISTANCE_CHANGE_FOR_UPDATES, this);
                    Log.d("Network", "Network");
                    if (locationManager != null) {
                        location = locationManager.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
                        if (location != null) {
                            latitude = location.getLatitude();
                            longitude = location.getLongitude();
                        }
                    }
                }
            }
 
        } catch (Exception e) {
            e.printStackTrace();
        }
 
        return location;
    }
 
    /*
     * (non-Javadoc)
     * @see android.app.Service#onBind(android.content.Intent)
     */
    @Override
    public IBinder onBind(Intent intent) {
        // TODO Написать код для метода
        return null;
    }
 
    /*
     * (non-Javadoc)
     * @see
     * android.location.LocationListener#onLocationChanged(android.location.
     * Location)
     */
    @Override
    public void onLocationChanged(Location location) {
        this.location = location;
        Editor ed = MainActivity.getSPref().edit();
        ed.putFloat("lat", (float) location.getLatitude());
        ed.putFloat("lon", (float) location.getLongitude());
        ed.commit();
    }
 
    /*
     * (non-Javadoc)
     * @see android.location.LocationListener#onStatusChanged(java.lang.String,
     * int, android.os.Bundle)
     */
    @Override
    public void onStatusChanged(String provider, int status, Bundle extras) {
        // TODO Написать код для метода
 
    }
 
    /*
     * (non-Javadoc)
     * @see
     * android.location.LocationListener#onProviderEnabled(java.lang.String)
     */
    @Override
    public void onProviderEnabled(String provider) {
        // TODO Написать код для метода
 
    }
 
    /*
     * (non-Javadoc)
     * @see
     * android.location.LocationListener#onProviderDisabled(java.lang.String)
     */
    @Override
    public void onProviderDisabled(String provider) {
        // TODO Написать код для метода
 
    }
 
    public double getLatitude() {
        if (location != null) {
            latitude = location.getLatitude();
        }
 
        // return latitude
        return latitude;
    }
 
    /**
     * Function to get longitude
     * */
    public double getLongitude() {
        if (location != null) {
            longitude = location.getLongitude();
        }
 
        // return longitude
        return longitude;
    }
 
    public void stopUsingGPS() {
        if (locationManager != null) {
            locationManager.removeUpdates(GPSTracker.this);
        }
    }
 
    public boolean canGetLocation() {
        return this.canGetLocation;
    }
 
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru