Turkcell | Geleceği Yazanlar

Soru & Cevap

Belli Aralikta Konum bilgisi alma

11.12.2014 - 12:16

Belli araliklarda konum bilgisini almak istiyorum.Konum bilgisinin nasil alinacagini biliyorum ama bunu mesela 5,10,20,40 dk gibi araliklarda almak istiyorum bunu nasil yapabilirim.

2414 Görüntülenme

2 Cevap

Zafer M ŞEN
11.12.2014 - 15:00

Kardeşim  androide ilk başladığımda buna benzer bi uygulama yapmıştım benm yaptığım çok amatörceydi:) dışardan girdiğim süreyi timer la geri saydıryordum öle konum alıyordm :) buda senin istedğin.

 

// Minimum mesafe metre cinsinden Güncellemeler değiştirmek için
  [code]  private static final long MIN_DISTANCE_CHANGE_FOR_UPDATES = 1; // 1 meters[/code]

    // Milisaniye cinsinden güncellemeler arasındaki minimum süre

[code]   private static final long MIN_TIME_BW_UPDATES = 1000 * 30 * 1; // 0.5 minute[/code]

 

 

[code]

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;
                // First get location from Network Provider
                if (isNetworkEnabled) {
                    locationManager.requestLocationUpdates(
                            LocationManager.NETWORK_PROVIDER,
                            MIN_TIME_BW_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();
                        }
                    }
                }
                // if GPS Enabled get lat/long using GPS Services
                if (isGPSEnabled) {
                    if (location == null) {
                        locationManager.requestLocationUpdates(
                                LocationManager.GPS_PROVIDER,
                                MIN_TIME_BW_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();
                            }
                        }
                    }
                }
            }

        } catch (Exception e) {
            e.printStackTrace();
        }

        return location;
    }

[/code]

mantık bu 

Sitede yorum yapabilmek için giriş yapın ya da üye olun.

Anıl SÖZERİ
11.12.2014 - 13:04

Merhaba,

Aşağıdaki kaynakta bulunan requestLocationUpdates metodunda bulunan long minTime parametresi işinizi görecektir.

LocationManager

İyi çalışmalar.

Sitede yorum yapabilmek için giriş yapın ya da üye olun.

Sitedeki sorulara cevap verebilmek için giriş yapın ya da üye olun.