BLM401 Mobil Cihazlar için ANDROİD İşletim Sistemi ANDROİD DE SENSÖRLER. BLM401 Dr.Refik SAMET

Benzer belgeler
BLM401 Mobil Cihazlar için ANDROİD İşletim Sistemi YAYIN ALICILARI. BLM401 Dr.Refik SAMET

BLM401 Mobil Cihazlar için ANDROİD İşletim Sistemi UYGULAMA KAYNAKLARI. BLM401 Dr.Refik SAMET

BLM401 Mobil Cihazlar için ANDROİD İşletim Sistemi İNTENT VE İNTENT. BLM401 Dr.Refik SAMET

Activity Context.startActivity Activity, AndroidManifest

BLM401 Mobil Cihazlar için ANDROİD İşletim Sistemi SERVİS BİLEŞENLERİ. BLM401 Dr.Refik SAMET

(09/05/2016)

Bazı Akıllı Telefon Sensörleri

BLM401 Mobil Cihazlar için ANDROİD İşletim Sistemi GÜVENLİK VE İZİNLER. BLM401 Dr.Refik SAMET

Genel Programlama II

BLM401 Mobil Cihazlar için ANDROİD İşletim Sistemi KULLANICI ARAYÜZ. BLM401 Dr.Refik SAMET

NESNEYE YÖNELİK PROGRAMLAMA

ANKARA ÜNİVERSİTESİ ELMADAĞ MESLEK YÜKSEKOKULU BİLGİSAYAR PROGRAMCILIĞI PROGRAMI DERS İÇERİKLERİ

Android Ders Notları

ANA SINIF TÜRETİLEN BİRİNCİ SINIF TÜRETİLEN İKİNCİ SINIF

Android e Giriş. Öğr.Gör. Utku SOBUTAY

BİLG Dr. Mustafa T. Babagil 1

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Dinamik Kodlama. [X] [X] Yeni Fonksiyon

ALGORİTMA VEYA PROGRAMLAMA DAİR KAVRAMLAR

CUSTOMSLİDİNG KULLANIMI

MOBİL UYGULAMA GELİŞTİRME

-- işareti tek satırlık açıklamalarda kullanılır. Açıklama olarak yazılan satırın önüne konulması yeterlidir.

BİL-142 Bilgisayar Programlama II

NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 10. Yrd.Doç.Dr.Hacer Karacan

Öğr. Gör. Serkan AKSU 1

PYTHON PROGRAMLAMA DİLİ

Göstericiler (Pointers)

Yazılım Kodlama ve İ simlendirme Standartları v1.0

Bazı Ulusal Marketlere Ait Örnek Tanımlamalar

1. Direnç 2. Akım 3. Gerilim 4. Kapasitans 5. Endüktans 6. Frekans

İŞE ALMA. Kaynakları paketi ile ne şekilde takip edebilecekleri ile ilgili bilgi verilmesi amaçlanmıştır. [ ] Diğer

AX3000 MEKANİK TESİSAT VE EKB V2014

Red Alert 2.0 Truva Atı ve Bankacılık Zararlısı İnceleme Raporu

YAPILAR BİRLİKLER SAYMA SABİTLERİ/KÜMELERİ. 3. Hafta

MOBİL UYGULAMA GELİŞTİRME

Yrd. Doç. Dr. Caner ÖZCAN

5.HAFTA. Sınıf ve Nesne Kavramı, Metot Oluşturma, Kurucu Metot, this Deyimi

BTP 207 İNTERNET PROGRAMCILIĞI I. Ders 5

Qt ile Bir Ağ Uygulaması

YZM 2105 Nesneye Yönelik Programlama

PROGRAMLAMAYA GİRİŞ DERS 2

Nesneye Yönelik Programlama (OOP) 7.Hafta

OYUN GELİŞTİRME AŞAMALARI-I

NEUTRON SMART HOME NTA-GN8540

WEB TASARIM I. Öğr. Gör. M. Mutlu YAPICI. Ankara Üniversitesi Elmadağ Meslek Yüksekokulu

Balon & Banka Teslim tarihi: 17 Kasım 2008

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Yeni bir proje açarken File New - Web Site diyoruz. Gelen ekranda Visual Basic veya C# seçilebilir. Biz ders kapsamında C# programlama dilini seçtik.

AOSB 2017 EĞİTİM PROGRAMI

Spring Giriş Eğitimi

Matematikte Bilgisayar Uygulamaları. Hafta 2 Dr. Murat GEZER

ALGORİTMA VE PROGRAMLAMA II

BLM-112 PROGRAMLAMA DİLLERİ II. Ders-3 İşaretçiler (Pointer) (Kısım-2)

OMNET Ağ Benzetim Yazılımı (Network Simulation Framework) BİL 372 Bilgisayar Ağları. GYTE - Bilgisayar Mühendisliği Bölümü

BLM 112- Programlama Dilleri II. Hafta 4 İşaretçiler (Pointers)

HSancak Nesne Tabanlı Programlama I Ders Notları

Struct VE GÖSTERİCİLER FONKSİYONLARDA STRUCT KULLANIMI Programlama dilleri hafta -

Javascript. 1) Notepad++ aşağıdaki kodları yazıp deneme.html olarak kaydedelim. 2) Biraz önceki sayfa sadece html kodların içeriyordu.

KOD PARÇACIKLARI 1 / 5

KARAYOLU TRAFİK GÜVENLİĞİ IOS ve ANDROİD TABANLI UYGULAMA, OYUN VE İNTERAKTİF KİTAP YARIŞMASI

C#(Sharp) Programlama Dili

BLM 112- Programlama Dilleri II. Hafta 5 İşaretçiler (Pointers)

VTIY DERS-4 YARDIMCI NOTLARI -2018

Krm.MobilTapu Uygulaması Kullanımı

Kalıtım (Inheritance)

İnternet Programcılığı

MOBİL UYGULAMA GELİŞTİRME

COM API v.1.1 BELGE SÜRÜMÜ : 1.1

BMT 101 Algoritma ve Programlama I 11. Hafta. Yük. Müh. Köksal Gündoğdu 1

E-DÖNÜŞÜM ADAPTÖRÜ EL KİTABI

Yrd. Doç. Dr. Caner ÖZCAN

NB Ekran Seri Port Üzerinden Veri Okuma/Yazma. Genel Bilgi Protokol Oluşturma Veri Okuma Veri Yazma

C++ Dersi: Nesne Tabanlı Programlama 2. Baskı

Türkçe. BT-03i Kullanıcı Kılavuzu

Ders Tanıtım Sunumu. Internet Programming II. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı. 26 Şub Öğr. Gör.

Görsel Programlama DERS 03. Görsel Programlama - Ders03/ 1

Bağlı Dosya Oluşturma Uygulaması

/ C Bilgisayar Programlama Yıliçi Sınavı Test Soruları. Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : , 60 dak.


Model BLW-210PI

CAEeda TM. NACA0012 KANADI ÜZERİNDE FAPeda ÇÖZÜMÜ UYGULAMASI EĞİTİM NOTU. EDA Tasarım Analiz Mühendislik

MapCodeX MapLand Kullanım Kılavuzu

Özyineleme (Recursion)

İNÖNÜ ÜNİVERSİTESİ MALATYA MESLEK YÜKSEKOKULU DERS TANITIM FORMU. Kredisi AKTS Eğitim Dili Tipi: Zorunlu/ Saat

Asp.Net Veritabanı İşlemleri

Bölüm 10. Altprogramların gerçeklenmesi ISBN

9. HAFTA KBT204 İNTERNET PROGRAMCILIĞI II. Öğr.Gör. Hakan YILMAZ.

OYUN GELİŞTİRME AŞAMALARI-I

Programlama Dilleri. C Dili. Programlama Dilleri-ders08/ 1

EXISTS VE NOT EXISTS fonksiyonları

DİZİLER-KATARLAR ALGORİTMA VE PROGRAMLAMA II

Lambda İfadeleri (Lambda Expressions)

Q-P 200A KULLANIM KILAVUZU

08217 Internet Programcılığı I Internet Programming I

1. Aşağıdaki program parçacığını çalıştırdığınızda result ve param değişkenlerinin aldığı en son değerleri ve programın çıktısını yazınız.

Veri Yapıları Laboratuvarı

ATATÜRK ÜNİVERSİTESİ BİLGISAYAR MÜHENDİSLİĞİ BÖLÜMÜ BM 104- NESNEYE YÖNELİK PROGRAMLAMA DERSİ BAHAR DÖNEMİ ÖDEV-3

Bir dizinin boyutları sabittir ve kullanılmadan önce belirlenmelidir. Dizi boyutunu belirlemek için başka bir değişkende kullanabilirsiniz.

İNTERNET PROGRAMCILIĞI DERSİ

Sorgudan elde edilen değerin değişkenlere aktarılmasını sağlar. Sorgudan tek satır dönmesi gerekir. Çok satır dönerse hata verir.

Transkript:

BLM401 Mobil Cihazlar için ANDROİD İşletim Sistemi ANDROİD DE SENSÖRLER BLM401 Dr.Refik SAMET 1

GİRİŞ (1/4) Android, cihazlarda bulunan ivme, basınç, yakınlık, termometre gibi çeşitli sensörleri desteklemektedir. Android platformunda bütün sensörler için aynı programlama arayüzü oluşturulmuştur. Android in desteklediği sensörler: BLM401 Dr.Refik SAMET 2

GİRİŞ (2/4) TYPE_ACCELEROMETER: İvme sensörü TYPE_GRAVITY: Yerçekimi sensörü TYPE_GYROSCOPE: Jiroskop TYPE_LIGHT: Işık sensörü TYPE_LINEAR_ACCELERATION: Çizgisel ivme sensörü TYPE_MAGNETIC_FIELD: Manyetik alan sensörü BLM401 Dr.Refik SAMET 3

GİRİŞ (3/4) TYPE_ORIENTATION: Oryantasyon sensörü TYPE_PRESSURE: Basınç sensörü TYPE_PROXIMITY: Yakınlık sensörü TYPE_ROTATION_VECTOR: Dönme sensörü TYPE_TEMPERATURE: Termometre BLM401 Dr.Refik SAMET 4

GİRİŞ (4/4) Cihazımızda bulunan sensörleri öğrenmek için aşağıdaki kodu bir aktivite sınıfının oncreate fonksiyonuna yazıp çalıştırın: SensorManager sensoryoneticisi=(sensormanager) getsystemservice (SENSOR_SERVICE); List <Sensor> sensors = sensoryoneticisi.getsensorlist(sensor.type_all); for (int i=0; i<sensors.size(); i++) { Log.i( Sensor + i, sensors.get(i).tostring()); } Cihazdaki tüm sensörler LogCat e yazdırılıyor BLM401 Dr.Refik SAMET 5

SENSÖR UYGULAMASI (1/3) Android sensörlere ulaşmak için ortak bir arayüz sunmaktadır. Bir sensörü kullanmak için o sensörde olan değişikleri almak için bir kayıt işlemi yapılır. İş bittiğinde bu kayıt silinmelidir. Aksi halde uygulama çalışmadığında da sensörün kullanılmasına ve pilin kısa zamanda bitmesine neden olur. BLM401 Dr.Refik SAMET 6

SENSÖR UYGULAMASI (2/3) Oryantasyon sensörü uygulaması Bu uygulama oryantasyon sensörlerinden gelen aşağıdaki verileri alıp ekranda göstermektedir: - Azimut - Eğim - Yuvarlanma Cihaz çevrildiğinde veriler değişmektedir. BLM401 Dr.Refik SAMET 7

SENSÖR UYGULAMASI (3/3) Yeni bir Android projesi oluşturun ve res/layout/main.xml dosyasının içeriğini aşağıdaki gibi yapın (Sayfa 215-216) Bu XML dosyasını aktivite snıfında kullanın. Oryantasyon sensörünü kullanabilmek için bu sensörün referansını oncreate fonksiyonu içerisinde sensör yöneticisinden alın (Sayfa 216-217) Uygulamayı çalıştırın. BLM401 Dr.Refik SAMET 8

SENSÖR OLAYLARINI DİNLEYEN SINIFIN TANIMLANMASI (1/5) Aktivite sınıfında SensorEventListener tipinde bir değişkeni ilkleyin (Sayfa 217-218) Bu tanımlamayı bir önceki kod parçasında oncreate fonksiyonunun hemen üstünde yapın ve çalıştırın. sensordinleyici nesnesinin onaccuracychanged fonksiyonu sensörün hassaslık değeri değiştiğinde, onsensorchanged fonksiyonu ise sensördeki değer değiştiğinde çağrılan fonksiyondur. BLM401 Dr.Refik SAMET 9

SENSÖR OLAYLARINI DİNLEYEN SINIFIN TANIMLANMASI (2/5) Bu yapı bütün sensör dinleyicileri için aynıdır. Bu uygulamada oryantasyon sensörü kullanıldığından cihaz çevrildiğinde onsensorchanged fonksiyonu çalışmaktadır. Bu fonksiyon sensörden gelen veri ile ekrandaki yazı alanını (TextViewer) güncelleyecektir. BLM401 Dr.Refik SAMET 10

SENSÖR OLAYLARINI DİNLEYEN SINIFIN TANIMLANMASI (3/5) Sersör kullanımı aynı olmasına rağmen farklılıklar da mevcuttur. onsensorchanged fonksiyonu içerisinde SensorEvent nesnesi her sensör için farklı anlama sahiptir. Oryantasyon sensörü için SensorEvent nesnesinin değişkenlerinin anlamı aşağıdaki gibidir: BLM401 Dr.Refik SAMET 11

SENSÖR OLAYLARINI DİNLEYEN SINIFIN TANIMLANMASI (4/5) values[0]: Azimut, manyetik kuzey ile y ekseni arasındaki açı değeridir. 0 ile 359 arasında değerler alır. values[1]: x eksenindeki dönüş değeridir. - 180 ile 180 arasında değerler alır. values[2]: y eksenindeki dönüş değeridir. -- 90 ile 90 arasında değerler alır. BLM401 Dr.Refik SAMET 12

SENSÖR OLAYLARINI DİNLEYEN SINIFIN TANIMLANMASI (5/5) Yakınlık sensörü için tanım: values[0]: Santimetre cinsinden uzaklık değeridir. Diğer sensörlerin nasıl veri gönderdiklerini http://developer.android.com/reference/android /hardware/sensorevent.html adresinden incelenebilir. BLM401 Dr.Refik SAMET 13

SENSÖR DİNLEYİCİ NESNESİNİN KAYDEDİLMESİ (1/1) Oryantasyon sensöründen gelen olayları dinlemek için kullanılan sensordinleyici nesnesinin bu olayı alabilmesi için oryantasyon sensörünün kayıt edilmesi gerekiyor. Bunu onstart fonksiyonu içerisinde yapmak gerekir (Sayfa 219). BLM401 Dr.Refik SAMET 14

SENSÖR DİNLEYİCİ NESNESİNİN KAYDININ SİLİNMESİ (1/1) Aktivite kapanırken kayıt ettiğimiz nesnenin kaydını silmek gereksiz pil kullanılmasının önüne geçmemize katkı sağlar. Bu işlemi onpause fonksiyonu içerisinde yapmak gerekir (Sayfa 220). BLM401 Dr.Refik SAMET 15

SensorSimulator (1/1) Uygulamayı sanal cihazda denemek için SensorSimulator uygulaması kurulmalıdır. SensorSimulator uygulaması ile tüm sensörlerin testleri yapılabilir. SensorSimulator http://code.google.com/p/openintents/wiki/s ensorsimulator adresinden indirilebilir. BLM401 Dr.Refik SAMET 16

(son) BAŞARILAR BLM401 Dr.Refik SAMET 17