Turkcell | Geleceği Yazanlar

Soru & Cevap

GPS Location

28.11.2013 - 21:48

Merhaba,

Üzerinde çalıştığım bir projede GPS üzerinden lokasyon bilgilerini (enlem, boylam ve adres) alıyorum fakat bazı telefonlarda her üçünü de alabildiğim halde bazılarında yalnızca enlem ve boylamı alabiliyorum (Android versiyonları aynı. Ör: 4.1.2) bunun sebebi ne olabilir? Bir diğer sorum ise;

GPS kapalı ise aktif hale getirmek için Lokasyon ayarlarına yönlendirip kullanıcı tarafından manuel olarak aktifleştirebiliyorum. Kullanıcıya sormadan program açıldığı anda direk olarak GPS i aktif hale getirebilme imkanım var mı?

5000 Görüntülenme

6 Cevap

Anıl SÖZERİ
30.11.2013 - 14:56

Anladım, yardımcı olduğunuz için teşekkürler.

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

Can Çiloğlu
30.11.2013 - 14:46

Geocoder sınıfı Android SDK'da bulunuyor, bulunmayan Gecocoder sınıfının adres bilgisini bulmada kullandığı backend servisi. Bu servis olmadan Geocoder'dan adres bilgisi alamazsın. Verdiğin örnek üzerinden gidersek, demek ki Samsung bu servisi S3'ün ROM'una entegre etmiş ama S3 Mini'de etmemiş. Yeterince açık olmuştur umarım.

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

Anıl SÖZERİ
30.11.2013 - 10:06

Android çatısında olmadığını söylüyorsunuz ama sonuç olarak Geocoder için android.location' ın içindeki class ı çağırıyoruz nasıl Android in bir parçası olmuyor onu anlayamadım? Örnek vermek gerekirse biz bu denemeleri Samsung Galaxy S3 ve S3 Mini cihazlarında denedik S3'te alırken S3 Mini de almadı adres bilgisini.

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

Can Çiloğlu
30.11.2013 - 03:21

Tabii, adresi almak için muhtemelen Android Framework içindeki Geocoder (android.location.Geocoder) sınıfını kullanıyorsunuz. Geocoder sınıfı adres bilgisini verebilmek için arkada çalışan bir servise ihtiyaç duyar ve bu servis ana Android çatısının bir parçası değil. Her cihaz üreticisi bu servisi cihaz yazılımına eklemiyor ve bu servisin olmadığı cihazlarda adres bilgisi null dönüyor. Bu servisin var olup olmadığını anlamak için Geocoder sınıfındaki isPresent() metodunu kullanabilirsiniz.

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

Anıl SÖZERİ
29.11.2013 - 13:31

Tamam, teşekkürler peki ilk sorum hakkında herhangi bir bilginiz var mı veya daha önce böyle bir durumla karşılaştınız mı?

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

Can Çiloğlu
29.11.2013 - 08:12

Selamlar,

Android işletim sisteminde kullanıcı kontrolündeki donanım ayarlarını (GPS, WiFi, Bluetooth vs.) kullanıcı onayı olmadan programatik olarak açıp kapayamaz veya değişiklik yapamazsınız. Bu işletim sisteminin bir güvenlik önlemidir.

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.