Huawei Awareness Kit

Bir önceki yazımda hareket etmenin ne kadar önemli olduğundan bahsederken evden çalışma sürecimizde bazen adım atmayı bile unuttuğumuza da değinmiştim. İşte tam da bu noktada bizim belirlediğimiz zaman aralıklarında uzun süreli hareketsizlik durumumuza göre ‘harekete geç’ bildirimi alsak bizler için oldukça faydalı olur diye düşündüm ve Awareness Kit’in Behavior özelliği sayesinde kullanıcıların mevcut durumlarını algılayıp, onlara özelleştirdikleri sürelerde bildirim göndermelerini sağlayan bir uygulama geliştirdim. Aslında ‘healthy life’ uygulamamıza güzel bir özellik ekledim desem daha doğru olur :)

Geliştirme sürecimize geçmeden önce Awareness Kit nedir ? Kullanım avantajları nelerdir ? dilerseniz inceleyelim..

Huawei Awareness Kit Nedir ?

HUAWEI Awareness Kit, uygulamanıza kullanıcıların mevcut saati, konumu, davranışı, ses cihazı durumu, ortam ışığı ve hava durumu dahil olmak üzere bağlamsal bilgileri alma yeteneği sağlar. Uygulamanız, bir kullanıcının mevcut durumu hakkında daha verimli bir şekilde bilgi edinerek daha akıllı, daha düşünceli bir kullanıcı deneyimi sunmayı mümkün kılar.

Huawei Awareness Kit’ in Avantajları Nelerdir ?

  • Çok boyutlu ve evrilebilir farkındalık yetenekleri birleşik bir şekilde çağrılabilir.
  • Donanım ve yazılımın sinerjisi, veri toplamayı daha doğru ve verimli hale getirir.
  • Yerel hizmet isteklerinin çip üzerinde işlenmesi ve bulut hizmetlerine yakın erişim, daha hızlı bir hizmet yanıtı vaat ediyor.
  • Farkındalık yeteneklerinin paylaşılması, uygulamalar ve cihaz arasındaki ayrı etkileşimleri önleyerek sistem kaynak tüketimini azaltır. EMUI (veya Magic UI) ve Kirin çip ile işbirliği yapan Awareness Kit, en düşük güç tüketimi ile en iyi performansı bile elde edebilir.

Daha detaylı bilgi edinmek için aşağıdaki linki inceleyebilirsiniz.

Huawei Awareness Kit’in özelliklerini ve avantajlarını öğrendik.Artık geliştirme kısmına geçebiliriz. Öncelikle App Gallery Connect üzerinde bir proje oluşturmalıyız. Aşağıdaki linkten adımları takip edebilirsiniz.

Manifest dosyamıza gerekli izinleri ekleyerek başlayalım.

Android Manifest

Öncelikle Awareness Kit’in ‘capture client’ nesnesini kullanarak, kullanıcıların davranış sorgusu API’ını çağırıyoruz, dönen sonuca göre de işlemimizi oluşturmaya başlıyoruz. Uygulamanın profil kısmında kullanıcılara hangi aralıklarda bildirim almalarını isteyeceklerine dair üç seçenek sunduk. Bunlar ; 30 dakika, 1 saat ve 2 saat idi. Kullanıcılara seçtikleri zaman diliminde “ uzun süredir hareket etmedin, sağlıklı bir yaşam için harekete geç “ bildirimi göndererek kullanıcıların motivasyonunu arttırmayı istedik. Bunu yaparken de Awareness Kit’ in Behavior özelliğinden yararlandık. Behavior özelliğinin kendi içinde de methodları ve bu methodlara karşılık gelen değerleri mevcut. Bunlar ;

  • BEHAVIOR_IN_VEHİCLE ( value :0),
  • BEHAVIOR_ON_BICYCLE (value : 1),
  • BEHAVIOR_ON_FOOT (value :2),
  • BEHAVIOR_STILL (value : 3),
  • BEHAVI0R_UNKNOWN ( value :4),
  • BEHAVIOR_WALKING (value :7),
  • BEHAVIOR_RUNNING(value : 8)

Ben burada ‘BEHAVIOR_STILL’ özelliğini kullandım. Ve kullanıcıların uzun süreli hareketsizliklerini bu özellik sayesinde algıladım. Burada PERIOD_COUNTER ve NOTIFICATION_COUNTER tanımladım. Her 15 dakikada bir kullanıcının hareketsizlik durumuna bakıyor ve ona göre bu değerleri tutuyorum. Kullanıcı herhangi bir süre seçmediği durumda ise, default olarak 30 dakikada bir bildirim gönderdiğim için period_counter değerinin default’unu 2 olarak ayarladım. Kontrolü de yukarıda belirttiğim sürede kullanıcı ‘still’ durumundaysa notification_counter değerini arttırarak gerçekleştiriyor en son durumda da period_counter ve notification_counter değerlerini karşılaştırarak yapıyorum.

callBehaviorAwareness

Son olarak, yapılan işlemleri dinleyebilmek için Broadcast Receiver tanımlıyoruz.

AwarenessKitReceiver

Awareness Kit’ i öğrenip bir özelliğini uygulama içerisinde kullandık. Umarım sizler için de faydalı olmuştur.

Okuduğunuz için teşekkür ederim. Soru ve görüşleriniz benim için çok önemli..

Bir sonraki yazılarda görüşmek dileğiyle. :)

--

--