Huawei Konum Servisi Entegrasyonu


Huawei, bir süre önce kendi servislerini geliştireceğini duyurmuştu. Bu sürecin sonunda 2020'den itibaren üretilen cihazlar Huawei Mobil Servisleri ile kullanıma sunuldu. Uygulama geliştiricilerin bu mobi'de Huawei Location Kit'i uygulamalarına nasıl entegre edeceğinden bahsedeceğiz.


Öncelikle project build.gradle > allprojects içerisinde maven repository adresini tanımlıyoruz.


Bu işlemi buildscript > repositories içinde de uyguluyoruz.


Son bağımlılık olarak app build.gradle'da 'com.huawei.hms:location:version' sdk'sını implemente ediyoruz.


HMS sdk'sı çalışırken meydana gelebilecek olumsuzlukları engellemek adına proguard kurallarını da eklemeyi unutmayalım.


Kullanıcının konumuna erişebilmemiz için öncelikle manifest dosyasında gerekli izinleri tanımlamamız gerekiyor.


FusedLocationProviderClient sınıfı ile kullanıcının anlık konumuna kolaylıkla erişebiliriz. Öncelikle bu sınıfı kullanarak bir nesne üretiyoruz. HMS'in LocationService sınıfındaki getFusedLocationProviderClient methoduna oluşturduğumuz nesneyi set ediyoruz ve providerClient'ı elde ediyoruz.


Artık provider client üzerinden lastLocation bilgisini alabiliriz. Bunun için lastLocation objesine safeAct üzerinden listener ekleyebiliriz. Böylece lastLocation değişimlerini öğrenebileceğiz. Bunun için addOnSuccessListener metodu ile aşağıdaki şekilde listener'ımızı tanımladık.


Artık listener içerisindeki location objesi üzerinden konum bilgisine (enleme ve boylama) erişebiliriz



Manifest'e eklediğimiz izinleri handle edip konum için oluşturduğumuz methodu çağırıyoruz. Böylece HMS ile kullanıcıdan konum bilgilerini almış olduk.


Uygulamamızı çalıştırıp, izinleri onayladığımızda Logcat'ten Info'yu seçip arama çubuğuna Last Location yazdığımızda konumu görmemiz mümkün olacaktır.




Github: https://github.com/busrabozdemirr/HuaweiLocationKit


Kaynak: https://developer.huawei.com/consumer/en/codelab/HMSLocationKit/index.html#0


#Huawei #HuaweiLocationKit #LocationKit


0 yorum

Son Paylaşımlar

Hepsini Gör

Komünite

Platform

Mobiler.dev Anasayfa
  • Twitter
  • Instagram
  • development_düzenlendi_düzenlendi
  • Youtube
  • slack-icon-black_edited_edited_edited
  • Gri LinkedIn Simge
imageedit_2_9667998092.png
JetBrains Hakkında Detaylı Bilgi Alın

© 2021 by mobiler.dev

Kurumsal Yazar Hesapları

adesso.png
mobilerdevLogo.jpg
Yazarlık Başvurusu Hakkında Bilgi Alın, Başvuru Yapın.
Topluluk Yazarlarını Tanıyın