GİRİŞ
CAYNAX SPORTS TRACKER (ADIM SAYAR) UYGULAMASI
Bu uygulama Google Play Store üzerinden indirilebilmektedir. Uygulama indirildikten sonra Şekil-2’de gösterildiği gibi kullanıcıya ait kullanılacak ölçü birimleri, cinsiyeti, kilosu ve boy gibi bilgileri istenir.
Caynax Sports Tracker uygulaması kullanıcılarına çok çeşitli aktivite türleri seçmesine olanak sağlamaktadır.
Aktivite Türleri aşağıdaki gibidir;
- Bisiklet Sürmek
- Diğer
- Kano
- Kaykay
- Koşu
- Kros Kayağı
- Kürek Çekme
- Motorbiking
- Moutain biking
- Nordic Yürüme
- Paten
- Scooter
- Snowshoeing
- Stand Up Paddling
- Swimming
- Tekerlekli Patenle Kayma
- Tekerlekli Sandalye
- Walking upstairs
- Yokuş Aşağı kar kayağı
- Yürüme
- Yürüyüş
Uygulamada “Egzersiz Türü” olarak geçen fakat bizim hedef belirleme adında bahsettiğimiz özellikte ise iki seçenek bulunmaktadır. Bunlar mesafe hedefi ve süre hedefi olarak geçmektedir. Şekil-4’de gösterildiği gibidir.
UYGULAMANIN İNCELENMESİ
Uygulamanın incelenmesi için kullanılacak veriyi sağlamak amacıyla Samsung marka SM-G532F model numaralı (piyasada J2 Prime adında bilinir) Android 6.0.1 işletim sistemine sahip cihaz kullanılmıştır. Sistem ve uygulama dosyalarına ulaşabilmek için cihazda rootlama (cihazın kök dizinine erişim ve değişiklik yapma izni almak) olarak bilinen işlem yapılmıştır. Daha sonra uygulama değişik aktivite türlerinde, zamanlarda ve mesafelerde kullanılmıştır. Bu işlemlerden sonra uygulama verilerinin saklandığı klasör içerisinde 3 farklı veri tabanı dosyasına ulaşılmıştır. Bu klasörden ulaşılan veri tabanı dosyaları DB Browser for SQLite adlı program yardımı ile açıldı ve sadece tracker.db adlı dosyada veriler bulunduğu bu dosya detaylı incelenmiştir. Bu dosyanın içinde 10 tane tablo vardır.
Veri tabanları ve tablolar aşağıda gösterildiği gibidir;
Elde edilen 10 tablodan locations, photos, stages ve workouts tablolarından bilgiler elde edilmiştir.
Veri Tabanının İncelenmesi
Workouts tablosu içerisinde 15 adet sütun bulunmaktadır. Workouts tablosu tüm egzersiz kayıtlarının detayları ile tutulduğu tablodur. Workouts tablosunun sütunlarına ait bilgiler aşağıda verilmiştir.
- time sütunu, egzersizin başlama zamanı bilgilerini Unix tipinde tutmaktadır.
- endTime sütunu, yine aynı tipte egzersizin bitiş zamanını tutmaktadır.
- distance sütunu, alınan mesafeyi metre cinsinden tutmaktadır.
- duration sütunu, alınan mesafelerin ne kadar sürede gidildiğini milisaniye cinsinde kaydını tutmaktadır.
- maxSpeed sütunu, egzersiz boyunca çıkılan en yüksek hızın metre/saniye cinsinden kaydını tutmaktadır.
- maxAltitude sütunu, egzersiz boyunca çıkılan en yüksek rakım bilgisini tutmaktadır.
- movingTime sütunu, egzersiz süresini milisaniye cinsinden tutmaktadır.
- calories sütunu, egzersiz süresi boyunca yakılan kalori miktarının kaydını tutmaktadır.
- steps sütunu, egzersiz boyunca atılan adım sayısını tutmaktadır. Fakat kullanılan cihaz üzerinde adım sayısını algılayan sensör olmadığından dolayı sürekli olarak -1 değeri tutulmuştur.
- description sütunu, egzersiz kaydı hakkında tanımlayıcı notların veri tabanında tutulmasını sağlar.
- activitiyType sütunu, egzersiz başlamadan önce seçilen aktivite türünün kaydını tutmaktadır.
- workout_type sütunu, kullanıcı tarafından seçilen egzersiz türünün kaydını tutmaktadır.
- id sütunu, egzersiz kayıtlarına verilen numaraların kaydını tutmaktadır.(Primary_Key)
- creationDate sütunu, egzersiz kayıtlarının oluşturulma tarihini Unix tipinde tutmaktadır.
- modificationDate sütunu, egzersiz kayıtları üzerinde yapılan değişikliklerin tarihini Unix tipinde tutmaktadır.
Uygulamanın kullanımı boyunca workouts tablosunda tutulan verilerin ekran görüntüsü şekil-5’te verilmiştir.
Şekil-5 Workouts tablosunda tutulan uygulama verileri
Stage Tablosu
Stage tablosunda 6 adet sütun bulunmaktadır. Bu tablo workouts tablosunun özeti niteliğindedir. Bu tablo egzersizlerin başlangıç, bitiş, oluşturulma ve değiştirilme zaman bilgilerini Unix tipinde tutmaktadır. Bu tablo içerisinde bulunan workout sütunu, workouts tablosu ile ilişkilendirmek için egzersizlerin id numaralarını tutmaktadır. Stage tablosunun sütunlarına ait bilgiler aşağıda verilmiştir.
- workout sütunu, workouts tablosunda bulunan egzersizlerin id numaralarını tutmaktadır.
- time sütunu, egzersizlerin başlama zamanının kaydını tutmaktadır.
- endTime sütunu, egzersizlerin bitiş tarihinin Unix tipinde kaydını tutmaktadır.
- id sütunu, egzersiz verilerinin kayıt numaralarının kaydını tutmaktadır.
- creationDate sütunu, egzersizlerin oluşturulma tarihinin Unix tipinde kaydını tutmaktadır.
- modificationDate sütunu, egzersiz kayıtların yapılan değişikliklerin kaydını tutmaktadır. Uygulamanın kullanımında herhangi bir değişiklik yapılmadığı için otomatik olarak 0 değeri atanmıştır.
Uygulamanın kullanımı boyunca stages tablosunda tutulan verilerin ekran görüntüsü şekil-6’te verilmiştir.
Şekil-6 Stages tablosunda tutulan uygulama verileri
Photos Tablosu
Bu tablo, yapılan egzersiz sırasında uygulama üzerinden çekilen fotoğraflar hakkında verileri tutmaktadır. Photos tablosunda 6 adet sütun bulunmaktadır. Photos tablosunun sütunlarına ait bilgiler aşağıda verilmiştir.
- latitude sütunu, fotoğrafın çekildiği esnada bulunan enlem bilgilerini tutmaktadır.
- longitude sütunu, fotoğrafın çekildiği esnada bulunan boylam bilgilerini tutmaktadır.
- photo_path sütunu, uygulamanın kullanımı sırasında çekilen fotoğrafların nereye kaydedildiği bilgisini tutmaktadır. Dosyanın ismini fotoğrafın çekildiği tarih, saat ve aktivite türüyle adlandırır.
- workout sütunu, fotoğrafın hangi aktivite türünde çekildiği bilgisini tutmaktadır.
- id sütunu, tabloda tutulan verilerin kayıt numaralarını tutmaktadır.
- creationDate sütunu, egzersizlerin oluşturulma tarihinin Unix tipinde kaydını tutmaktadır.
- modificationDate sütunu, egzersiz kayıtlarında yapılan değişikliklerin kaydını tutmaktadır. Uygulamanın kullanımında herhangi bir değişiklik yapılmadığı için otomatik olarak 0 değeri atanmıştır.
Uygulamanın kullanımı boyunca photos tablosunda tutulan verilerin ekran görüntüsü şekil-7’te verilmiştir.
Locations Tablosu
Bu tabloda, yapılan egzersizlerin ortalama 1,5 sn’de bir hız, rakım, enlem, boylamlarını tutmaktadır. Locations tablosunda, 9 adet sütun bulunmaktadır.
- latitude sütunu, kaydedilen zamanda bulunan enlem bilgilerini tutmaktadır.
- longitude sütunu, kaydedilen zamanda bulunan boylam bilgilerini tutmaktadır.
- speed sütunu, kaydedilen zamandaki hız verilerini metre/saniye cinsinden tutmaktadır.
- time sütunu, kaydedilen zamanı Unix tipinde tutmaktadır.
- altitude sütunu, verilerin kaydedildiği zamanda bulunan rakım verilerini tutmaktadır.
- stage sütunu, verileri egzersizlerin özetleri ile (stageler) ilişkilendirmektedir.
- id sütunu, tabloda tutulan verilerin kayıt numaralarını tutmaktadır.
- creationDate sütunu, egzersizlerin oluşturulma tarihinin Unix tipinde kaydını tutmaktadır.
- modificationDate sütunu, egzersiz kayıtlarında yapılan değişikliklerin kaydını tutmaktadır. Uygulamanın kullanımında herhangi bir değişiklik yapılmadığı için otomatik olarak 0 değeri atanmıştır.
Uygulamanın kullanımı boyunca locations tablosunda tutulan verilerin ekran görüntüsü şekil-8’te verilmiştir;
Şekil-7 Photos tablosunda tutulan uygulama verileri
Uygulama hakkında verilerin elde edildiği 4 tablonun(locations, stages, workouts, photos) ilişki diyagramı şekil-9’da verilmiştir;
Uygulamanın Ayarları
Veri tabanı dosyalarına bakıldığı zaman uygulamanın ayarları bulunamamıştır. Bu yüzden sabit XML dosyaları incelenmiştir. Bu inceleme sonucunda com.caynax.sportstracker_preferences.xml adlı dosyada uygulamanın ayarları bulunmuştur. Bu ayarların bulunduğu XML dosyasına ait ekran görüntüsü aşağıda verilmiştir.
SONUÇLAR
Bu incelemede Caynax Sports Trackers adlı adım sayar uygulamasının analizi yapılmıştır. İnceleme için Samsung marka SM-G532F model numaralı Android 6.0.1 işletim sistemine sahip telefon kullanılmıştır. Telefon rootlama işleminden sonra uygulamaya ait veri tabanı dosyaları tespit edilmiştir. Tespit edilen veri tabanı dosyaları DB Browser for SQLite programı ile incelenmiştir. Veri tabanı dosyalarının incelenmesi sonucunda hangi bilgilerin tutulduğu gözlenmiştir. Uygulama kurulumu sırasında girilen bilgilerin veri tabanı dosyalarında tutulmadığı, bu bilgilerin bir XML dosyasında tutulduğu belirlenmiştir. Ayrıca incelenen uygulamanın hangi mail hesabı üzerinden indirildiği bilgisine de ulaşılmıştır.
Oğuzhan YAVUZ
Stajyer