Android Tabanlı Dokunmatik Ekran Panosu - KTÜ Elektrik

advertisement
T.C.
KARADENİZ TEKNİK ÜNİVERSİTESİ
Mühendislik Fakültesi
Elektrik-Elektronik Mühendisliği Bölümü
ANDROİD TABANLI DOKUMATİK
EKRAN PANOSU
210267 Murat ÇAKIL
220716 Evren ATMACA
Yrd. Doç. Dr. Yusuf SEVİM
Ocak 2013
TRABZON
Dış kapağın arkası boş
T.C.
KARADENİZ TEKNİK ÜNİVERSİTESİ
Mühendislik Fakültesi
Elektrik-Elektronik Mühendisliği Bölümü
ANDROİD TABANLI DOKUMATİK
EKRAN PANOSU
210267 Murat ÇAKIL
220716 Evren ATMACA
Yrd. Doç. Dr. Yusuf SEVİM
Ocak 2013
TRABZON
İç kapağın arkası boş
BİTİRME PROJESİ ONAY FORMU
Murat ÇAKIL, Evren ATMACA tarafından Yrd. Doç. Dr. Yusuf SEVİM
yönetiminde hazırlanan “Android Tabanlı Dokunmatik Ekran Panosu”
başlıklı lisans bitirme projesi tarafımızdan incelenmiş, kapsamı ve niteliği
açısından bir Lisans Bitirme Projesi olarak kabul edilmiştir.
Danışman
: Unvanı Adı ve SOYADI
………………………………
Jüri Üyesi 1
: Unvanı Adı ve SOYADI
………………………………
Jüri Üyesi 2
: Unvanı Adı ve SOYADI
………………………………
Bölüm
Başkanı
: Unvanı Adı ve SOYADI
………………………………
Onay formu sayfasının arkası boş
ÖNSÖZ
Günümüzde mobil cihazlar teknolojiyle birlikte insan hayatını kolaylaştıran bir
fonksiyona sahiptirler. İyi bir mobil cihazda, işletim sistemi donanımsal özellikleriyle
bir bütün oluşturur. Bu çalışmada android işletim sistemi programlanarak dokunmatik
ekran panosu projesinin gerçekleştirilmesi hedeflenmektedir.
Çalışmalarımız boyunca bize destek olan ve projenin son halini almasında bize yol
gösteren hocamız Sayın Yrd. Doç. Dr. Yusuf SEVİM‟e teşekkür ederiz. Ayrıca bu
projeyi destekleyen Karadeniz Teknik Üniversitesi Rektörlüğü‟ne Mühendislik
Fakültesi Dekanlığına ve Elektrik-Elektronik Mühendisliği Bölüm Başkanlığına içten
teşekkürlerimizi sunarız.
Hayatımız boyunca bize her türlü desteklerini hiçbir zaman esirgemeyen ailelerimize
şükranlarımızı sunarız.
Ocak, 2013
Evren ATMACA
Murat ÇAKIL
v
Önsöz sayfasının arkası boş
vi
İÇİNDEKİLER
Bitirme Projesi Onay Formu
iii
Önsöz
v
İçindekiler
vii
Özet
ix
1. Giriş
1
1.1. Arm İşlemcisi
1
1.1.2. Arm İşlemci Serileri
1
1.2. Android
2
1.2.1. Android Programlayabilmek İçin Gerekli Yazılımlar
1.3. Android Programlamak İçin Gerekli Yazılımların Kurulumları
4
5
1.3.1. Eclipse IDE Programının Kurulumu
5
1.3.2. Android SDK Programının Kurulumu
9
1.3.3. Java Development Kit Programının Kurulumu
10
1.4. Android Çalışma Ortamının Oluşturulması
12
1.5. Projenin Açılış Ekranı
16
1.6. Ana Ekran
17
1.7. 1. Öğretim Ders Programı Ekranı
17
1.8. 2. Öğretim Ders Programı Ekranı
18
1.9. Ders Programı Tercih Ekranı
19
2. Duyurular Ekranı
20
2.1. İletişim Ekranı
21
2.2. Sınav Programı Tercih Ekranı
21
2.3. Launcher Hataları
22
2.3.1. Java Compiler Hatası
23
3. Sonuçlar
25
4. Problemin Tanımı Ve Varılmak İstenen Hedef
26
5. Katkılar
27
6. Yöntem
28
7. Çalışmalar
29
8. Çalışma Takvimi
30
vii
9. Araştırma Olanakları
31
10. Kaynaklar
32
11. Özgeçmiş
33
11. Standartlar Ve Kısıtlamalar Formu
34
viii
ÖZET
Bu projede; android tabanlı dokunmatik ekran panosu gerçeklenmiştir. Projenin işletim
sistemi olan Android; Linux tabanlı bir işletim sistemi olmakla birlikte Linux sisteminin
özelliklerinden dolayı oldukça gelişmiş düzeyde bir altyapı sistemine sahiptir.
Bu proje yardımı ile öğrenci-öğretmen iletişimine yeni bir soluk getirerek, öğretmenle
yüz yüze görüşme gereksinimini ortadan kaldıracak ve ürünün bizlere sağladığı
kolaylıklar çerçevesinde interaktif iletişim mümkün kılınabilecektir. Projemiz
öğrencilere söz konusu olan öğretmenin mevcut ders programı, sınav programı ve acil
duyurularına da aynı arayüz üzerinden kolaylıkla erişme imkanı sağlayacaktır.
ix
x
1. GİRİŞ
Bu kısımda hedeflenen sistemin gerçekleştirilmesindeki aşamalar, kullanılması
düşünülen yazılımından kısaca bahsedilmiştir. Öncelikle mesaj
panosunun
donanımından bahsedilmiş, ardından kullanılacak yazılım hakkında bilgi verilmiştir.
1.1. Arm İşlemcisi
İngiliz teknoloji firması olan ARM piyasada bulunan mikroişlemcilerin tamamına
yakını ARM işlemci olmasına rağmen işlemci üretmemekle birlikte diğer işlemci
üreticisi firmalar için çeşitli işlemci mimarileri tasarlayıp satmaktadır. Bu nedenle
piyasa birçok marka ARM tabanlı işlemci ve bu işlemcileri kullanan ürün
bulunmaktadır. Projede kullanılan Mini 2440 bordu 400 MHz Samsung ARM9
işlemcisi barındırıyor. ARM işlemcisi kullanımın avantajları genel olarak şöyle
sıralanabilir.

Daha basit kullanım imkanı sağlayan RISC mimarisine sahiptir.

Daha az transistor kullanımı sayesinde diğer işlemcilere nazaran daha düşük
güç tüketimi.

Bütün işlemlerin RAM yerine registerler üzerinden yapılmasından dolayı
daha basit ve kullanışlı komut seti kullanımı sağlar. RAM ise sadece kurulum
ve yükle komutlarında kullanılmaktadır.

Komutların basitliği ve kullanımı sırasında hangi komutun hangi işlem
sırasında çalıştırılacağının belirlenebilmesi sayesinde daha basit algoritmalar
yazılabilmesini sağlar. Bu özelliği de RISC mimarisinden gelmektedir.

32-bit işlemci olması nedeniyle aynı anda birden çok işlem yapabilmeyi
sağlar. Ayrıca piyasada bulunan birçok firma ARM lisanıyla birbirinden
farklı ürünler tasarlayabilmektedir. Bu da fiyat, performans ve tasarım
açsından geniş bir ürün yelpazesine sahip olmasını sağlamaktadır.
1.1.2. ARM İşlemci Serileri
ARM şirketinin mimari ailesini ele alırsak; Klasik ARM, Cortex M, Cortex R ve
Cortex A işlemci serileri olarak dört ana ürün gurubuna ayrılmaktadır.
1

Klasik ARM işlemci serisi: ARM7, ARM9, ARM11 işlemcilerinin bulunduğu
bu seri üretilen ilk ARM işlemci modelleridir. Basit donanımsal işlemlere cevap
verebilmekle birlikte kullanımları da giderek azalmaktadır.

Cortex R ve Cortex M serisi işlemciler: Gömülü (Embedded) sistemlerde,
yani belli bir amaca yönelik düşük güç tüketimi ve düşük maliyetli
(asansör, içecek otomatları, v.b.) işlemlerde kullanılan işlemcilerdir. Cortex
embedded işlemciler şöyle sıralanabilir; Cortex-M0, Cortex-M1, CortexM3, Cortex-M4, Cortex R4, Cortex R5, Cortex R7.

Cortex A serisi işlemciler: Yüksek performanslı ve ileri teknoloji gerektiren
ürünlerde kullanılırlar. Hayatımızda genişçe yer eden akıllı cihazların hemen
hepsi özellikle de mobil cihazlar bu seri işlemcileri kullanmaktadır. Bu seriyi
Cortex A5,
Cortex A8,
Cortex A9 ve Cortex A15 gibi işlemciler
oluşturmaktadır.
Bu veriler ışığında piyasada ARM işlemci üreten firmalardan bazıları şunlardır.
Apple, FreeScale, Hummingbird, Nvidia, Samsung, STMicroelectronics, Texas
Instruments, Qualcomm.
ARM
işlemcilerle
mikro
denetleyici
düzeyinde
elektronik
tasarımlar
gerçekleştirebilir, Android, akıllı işletim sistemleri (iOS) ve Windows Mobile gibi
yazılım geliştirme platformlarının yardımıyla yazılım geliştirebilir veya ARM
development boardlar yani ARM geliştirme kartlarıyla uygulama yazılımları
geliştirilebilir.
1.2. Android
Android Linux çekirdeği tabanlı bir işletim sistemidir. Linux sisteminin
özelliklerinden dolayı oldukça gelişmiş düzeyde bir altyapı sistemi vardır. Fakat bir
takım ticari ve güvenlik anlaşmalarından dolayı bazı özellikleri sınırlandırılmıştır.
Genel olarak bir Linux sisteminde bulunan belli başlı özellikleri bulundurmamasından
dolayı tam olarak bir Linux işletim sistemi olarak kabul edilemez. 2005 yılında, mobil
piyasasına girmek isteyen Google, Android işletim sistemini Open Handset Allience
firmasından satın alarak geliştirmeye başladı. Google, Android işletim sisteminin
serbest olmasını istedi ve kodların büyük çoğunluğunu Apache Lisansı altında
yayınladı. Bu, isteyen herkesin kaynak kodları indirebilecek olması ve daha da fazlası
2
donanım üreticileri kendi uzantılarını Android‟ e ekleyip satması anlamına gelecekti.
Sade ve bir o kadar da kullanışlı olan bu özellikler Android işletim sistemini daha çekici
hale getirdi.
Diğer firmalar o zamana kadar kendi işletim sistemlerini geliştiriyorlardı. Fakat çoğu
firma akıllı telefon endüstrisini elinde tutan Apple ile rekabet edemiyorlardı. Şirketler
hem rekabet etmek için hem de mobil sistemler için serbest ve açık kaynak kodlu bir
işletim sistemi kullanmanın teknolojinin gelişmesine daha yararlı olacağı konusunda
birleştikleri için cihazlarına Android işletim sistemini dahil ettiler.
Android işletim sistemi aynı zamanda uygulama geliştirmek için daha kapsamlı bir
seçenek sunduğu için diğer işletim sistemlerinden daha avantajlı konumda. Donanımın
yanında uygulamalar, iyi bir akıllı telefon için en önemli özelliklerden bir tanesidir. Bu
yüzden üreticiler İOS ile rekabet etmek için çareyi Android işletim sisteminde
aramaktadırlar.
İOS ve Android pazarın büyük bir kısmını elinde bulundurmakla beraber SQLite veri
depolama, GSM telefon özelliği ve birçok medya formatı desteklemektedir. Ayrıca
Bluetooth, WİFİ, 3G, 2 ve 3 boyutlu grafik özelliği sunmaktadır.
Genel olarak Android işletim sistemi beş bölümdür. Bunlar:

İşlemci (Linux Tabanlı)

Android Sanal Makine

Kütüphaneler

Uygulama Çatısı

Uygulama Tabakaları
Android aynı zamanda iOS‟ da bulunan Apple store türünde Android marketi
kullanıcılarına sunmakta, Android kullanıcıları Android market aracılığıyla sayısı
giderek artan yüz binlerce, çeşitli uygulamalara erişebilme imkanı bulmaktadır. iOS
işletim sisteminde uygulama geliştirebilmek için Mac işletim sistemine gereksinim
varken, Android için Window veya Mac gibi herhangi bir platformda uygulama
geliştirilebiliyor, ayrıca Android‟in tamamen açık kaynak kodlu bir işletim sistemi
olması
Android işletim sistemi için yazılım geliştirmeyi çok daha kolay bir hale
getirmektedir. [1]
3
Tablo 1. Android sürümleri ve piyasaya çıkış tarihleri gösterilmiştir [2].
Kod Adı
Çıkış Tarihleri
Android 1.5
Cupcake
30 Nisan 2009
Android 1.6
Donut
15 Eylül 2009
Android 2.1
Eclair
26 Ekim 2009
Android 2.2
Froyo
20 Mayıs 2010
Gingerbread
6 Aralık 2010
Honeycomb
24 Şubat 2011
Ice Cream Sandwich
14 Kasım 2011
Android
Versiyonları
Android 2.3
Android 2.3.2
Android 2.3.3
Android 2.3.7
Android 3.0
Android 3.1
Android 3.2
Android 4.0
Android 4.0.2
Android 4.0.3
Android 4.0.4
1.2.1. Android Programlayabilmek İçin Gerekli Yazılımlar

Android‟de program geliştirebilmek için Java yazılım dili kullanmak
gerekmektedir.

Java dilinde Android yazılım geliştirebilmek için öncelikle Java programı için
gereken Eclipse Integrated Development Environment programı kurulmalıdır.

Java programı ile gerçekleştirdiğimiz mobil cihazınızın uygulamalarını
bilgisayar ile kontrolünü sağlayan Android System Development Kit
programının var olması gerekmektedir.

Ayrıca Java programı ile gerçekleştirdiğimiz mobil cihazınızın uygulamalarını
bilgisayar ile kontrolünü sağlayan Android System Development Kit programını
4
çalıştırabilmek için de bilgisayarda Java geliştirme aracı olan Java Development
Kit‟in bulunması gerekmektedir.
1.3. Android Programlamak İçin Gerekli Yazılımların Kurulumları
Android programlama sürecinde gereken programların kurulumunda dikkat edilmesi
gereken en önemli nokta indirilmesi gereken programın kullanılan işletim sisteminin
türü ile uyumlu olmasıdır.İlk olarak bilgisayarın masaüstünde bulunan bilgisayarın
ikonuna sağ tıklanıp özellikler kısmına gelindiğinde kullanılan işletim sistemi ve
bilgisayar hakkında gerekli donanımsal bilgiler edinilebilir.Bu donanımsal bilgilerin
içinde bulunan işletim sisteminin 32 bit veya 64 bit seçeneklerinden hangisi olduğu
belirlenip kurulacak programların sistem türüne uygun olarak seçilmesi gerekmektedir.
1.3.1. Eclipse IDE Programının Kurulumu
İlk olarak http://www.eclipse.org [3] linki aracılığıyla siteye ulaşılır.
Şekil 1. Programın kurulumu için gerekli adımlar
5
Şekil 2. Eclipse downloads sayfasından uygun programın seçilmesi
Anasayfadaki download linkine tıklayarak yukardaki şekilde görünen sayfaya
ulaşılır. Bu sayfada Eclipse IDE for Java Developers sekmesinden işletim sistemine
uygun indirme linki seçilip program indirilir. Şekil 1, şekil 2 ve şekil 3‟de Eclipse
indirme aşamaları gösterilmiştir.
6
Şekil 3. Uygun işletim sisteminin seçilip yüklenmesi
Ülkelerin bulunduğu coğrafi bölgeye göre verilen download linklerden uygun olanı
seçilerek program indirilir. Şekil 4‟de bulunulan coğrafi konuma göre uygun linkin
seçilmesi gösterilmiştir.
Şekil 4. Bulunulan coğrafi konuma göre uygun linkin seçilmesi
7
İndirilen
program
dosyasından
ecilpsec
simgesine
tıklanarak
programın
yüklenmesine başlanır. Şekil 5‟de programı indirdikten sonra kurulum yapılması
gösterilmiştir.
Şekil 5. Programı indirdikten sonra kurulumun yapılması
Yükleme işlemi tamamlandıktan sonra programın her açılışında bir workspace
seçilerek program çalışmaya hazır hale getirilir. Şekil 6‟da programın hazır hale gelmesi
gösterilmiştir.
8
Şekil 6. Programın hazır hale gelmesi
1.3.2. Android SDK Programının Kurulumu
Eclipse IDE for Java Devoloper programı kurulduktan sonra ikinci aşama olarak
Andorid Software Development Kit programı kurulumu gerçekleştirilir. Aşağıdaki
şekilde gösterildiği gibi http://developer.android.com/sdk/index.html [4] adresinde
verilen kırmızı çember içindeki iki seçenekten istenilen program seçilerek bilgisayara
indilir. Şekil 7‟de Android Software Development Kit uygulamasının siteden
indirilmesi gösterilmiştir.
9
Şekil 7. Android SDK uygulamasının siteden indirilmesi
1.3.3. Java Development Kit Programının Kurulması
Android programlayabilmek için gereken bir diğer program ise Java Development
Kit
kurabilmek
programını
http://www.oracle.com/technetwork/java/javase/downloads/index.html
için
[5]
linki
ile
aşağıdaki sayfaya ulaşılır. Aşağıdaki şekilde mavi çember ile işaretlenmiş link tercih
edilir. Şekil 8‟de Oracle sitesinden jdk programının indirilmesi gösterilmiştir.
10
Şekil 8. Oracle sitesinden jdk programının indirilmesi
Aşağıda şekilde gösterildiği gibi tercih sayfasında bulunan program uzantıları
arasından mavi ile çevrilmiş sekmelerden çalışacağımız bilgisayarın işletim sistemine
uygun olanı tercih edilerek kurulum dosyasının bilgisayara indirilmesi gerçekleştirilir.
Şekil 9‟da bilgisayarın işletim sistemine uygun yazılımın seçilmesi gösterilmiştir.
11
Şekil 9. Bilgisayarın işletim sistemine uygun yazılımın seçilmesi
1.4. Android Çalışma Ortamının Oluşturulması
Yeni bir proje oluşturabilmek için Eclipse programından File→New→Android
Project sekmeleri takip edilerek New Android Project penceresine gelinir.Eğer
File→New sekmesinde Android Project seçeneği yoksa File→New→Other tercihi ile
açılan Select a Wizard penceresi ile Android Project seçeneğine ulaşılır. Eğer program
kurulumları doğru şekilde yapılmışsa File→New sekmeleri ardından Andriod Project
sekmesine ulaşılması gerekir. Android Project sekmesi seçildikten sonra New Android
Project penceresi karşımıza çıkar. Şekil 10, şekil 11, şekil 12‟de çalışma ortamının
oluşturulmaları gösterilmiştir.
12
Şekil 10. Yeni proje oluşturulması
Şekil 11. Yeni projeye isim verilmesi
New Android Project penceresindeki project name kısmına, yeni projeye vermek
istenilen proje ismi yazılır. Contents seçeneklerinden eğer yeni proje oluşturulacaksa
13
„Create new project in workspace‟, ya da daha önce oluşturulmuş kaynaktan
yararlanarak yeni bir proje gerçekleştirilecekse „Create Project from existing source‟
seçeneklerinden biri seçilir. Bir sonraki aşamaya next butonu kullanarak select build
target penceresine ulaşılır. Select build target penceresinde kurulum aşamasında,
yüklemesini gerçekleştirdiğimiz android sürümlerinden üzerinde çalışılacak olan
android versiyonu seçilerek next butonuyla bir sonraki pencereye geçilir. Son olarak
Application İnfo penceresi açılacaktır. Package Name kısmına „com.‟ ile başlayan
herhangi bir isim verilir. Eğer Package Name kısmına birden fazla kelimelik bir isim
verilecekse, kelimeler arasına boşluk değil nokta konması gerekir. Son olarak Create
Activity kısmına farklı bir isim verilerek finish butonuyla yeni proje oluşturma işlemi
tamamlanır.
Açılan sayfada proje menüleri görünmüyorsa sayfanın en alt sol kısmındaki ikona
tıklanıp project explorer sekmesinden proje menüleri çalışılan ekrana getirilir.Burada
program hangi isimle kaydedilmiş ise o isim ile başlayan bir klasör mevcuttur. Bu
klasör altında src, gen, Android 2.1 gibi dosyalar bulunur.
Şekil 12. Project explorer sekmesinden proje menülerini çalışılan ortama getirilmesi
14
Project explorer menüsündeki dosyalara göz atılırsa:
Buradaki src dosyası uygulamanın kaynak kodlarını içerir. Bu dosyanın bir alt kısmında
„com.‟ uzantılı dosya ve „main.java’ dosyası vardır. „Main.java‟ kısmına tıklayarak
programın ilk java dosyası açılır. Burada ikinci bir dosya olan „gen‟ adlı klasörde
otomatik olarak oluşturulmuş klasörler mevcuttur. „Gen‟ dosyasının bir alt klasörü olan
„R.java‟ dosyası açılarak uygulama yapılan programın içindeki her türlü karaktere
buradan ulaşır. Şekil 13‟de kurulumdan sonra gelen projenin ilk arayüzü gösterilmiştir.
Diğer bir dosya olan Android 2.1‟ in „android.jar’ sekmesinde projeye dahil
edilebilecek android ve java sınıfları bulunur. Assets kısmında ise projeye dışardan
dahil edilebilecek dosyalar bulunur.
Res klasöründe ise drawable ile başlayan dosyalar mevcuttur. Bu dosyalarda farklı
kalitelerde, projeye dahil edilebilecek resimler bulunur. Bu dosyalara dışardan da
resimler eklenerek uygulamaya dahil edilebilir. Layout ile başlayan kısımda ise
kullanıcının grafiksel olarak arayüz oluşturabileceği „main.xml‟ dosyası mevcuttur.
„Main.xml‟ dosyası açıldığında programın grafik kısmı ekrana gelir. Bu grafiksel
arayüzün sol tarafında textviewlar, butonlar kısaca her türlü medya kontrol simgesi
vardır. Eğer grafiksel arayüzde kod olarak çalışılacak ise main.xml kısmına geçilir.
Şekil 13. Main.xml dosyası açıldığında ekrana gelen arayüz
15
Graphical layout kısmında ekranın sol tarafındaki ikonları tutup siyah ekran üzerine
sürüklediğimizde bu ikonun özelliklerini görebilmek için properties kısmı açılır ve
istenilen değişiklikler yapılır. Properties penceresine sayfanın üst kısmında bulunan
WindowShow
viewOtherGeneral
sekmeleri
takip
edilerek
ulaşılır.
Sürüklediğimiz ikonun ayrıntılı olarak özellikleri properties kısmında bulunur.
Layout dosyasından sonra values klasörü içinde strings.xml kısmı vardır. Strings.xml
kullanıcıya bütün dizilere erişme imkanı ve uygulama adını değiştirebilme seçeneklerini
sunar. Project explorer menüsünün alt kısımlarına gelindiğinde AndroidManifest.xml
kısmı görülür. Bu xml dosyasında programın, android işletim sistemi üzerinde
kullanacağı izinler, hangi fonksiyonların hangi diziden başlayacağı gibi bilgiler bulunur.
1.5. Projenin Açılış Ekranı
Şekil 14‟de açılış ekran görüntüsü gösterilmiştir.
Şekil 14. Açılış ekran görüntüsü
16
1.6. Ana Ekran
Şekil 15‟de ana ekran görüntüsü gösterilmiştir.
Şekil 15. Ana ekran görüntüsü
1.7. 1. Öğretim Ders Programı Ekranı
Ders program ekranı oluşturmak için öncelikle “Table Row” ve “Table Layout”
komutları ile iç içe tablolar oluşturulur. Arkaplana arzu edilen fotoğraf veya renkli
kaplama yerleştirebilir. Ayrıca oluşturulan ders programı içinde olması istenilen
derslerin isimleri girilebilmekte böylece son derece şık görünen bu ders program hazır
hale gelmektedir. Şekil 16‟da 1. öğretim ders programı ekran görüntüsü verilmiştir.
17
Şekil 16. 1. öğretim ders programı ekran görüntüsü
1.8. 2. Öğretim Ders Programı Ekranı
Şekil 17‟de 2. öğretim ders programı ekran görüntüsü verilmiştir.
Şekil 17. 2. Öğretim ders programı ekran görüntüsü
18
1.9. Ders Programı Tercih Ekranı
Şekil 18‟de ders programı tercih ekranı görüntüsü verilmiştir.
Şekil 18. Ders programı tercih ekranı görüntüsü
19
2. Duyurular Ekranı
Şekil 19‟da sınav programı ekran görüntüsü gösterilmiştir.
Şekil 19. Duyurular ekran görüntüsü
20
2.1. İletişim Ekranı
Şekil 20‟de iletişim ekran görüntüsü gösterilmiştir.
Şekil 20. İletişim ekran görüntüsü
2.2. Sınav Programı Tercih Ekranı
Şekil 21‟de sınav programı ekran görüntüsü gösterilmiştir.
Şekil 21. Sınav programı ekran görüntüsü
21
2.3. Launcher Hataları
Manifest xml de her biri farklı ekranlardaki java komut dosyaları
“<action
android:name="com.atmaca.rssasus.DERS"
/>
<category
android:name="android.intent.category.DEFAULT" />” komutları ile tanıtılır.
Bu tanıtma işlemi sırasında eğer söz konusu ekran uygulamasının başlangıç ekranı
(ana ekranı) işlevlerini ve komutlarını kapsar ise uygulama açılınca ilk o program
dosyasının
yürütülmesi
için
“<category
android:name="android.intent.category.LAUNCHER" />” komutu kullanılır.
Eğer komut dizini ve başka bir deyişle söz konusu ekran; alt ekranlardan biri ise yani
başlangıç ekranı olma özelliği içermiyorsa manifest xml dosyasında “<category
android:name="android.intent.category.DEFAULT"/>” komutu ile tanıtılır. Buradaki
DEFAULT kelimesi o komut dosyasının ikincil öneme sahip olduğunu belirtir. Ayrıca
projenin gerçeklenmesi sırasında çok sık karşımıza çıkan bir diğer hata programın ve
yazılımın sorunsuz çalışmasına rağmen simülasyon programında ve cihazlarda
yazılımın çalışmamasıdır. Ana sayfa komut dosyası oluşturulurken, ana sayfa diğer
sayfalar ile aynı şekilde tanıtılırsa böyle bir hata ile karşılaşılır. Bu hata;
“ <action android:name="com.atmaca.rssasus.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />” komutları yerine,
“<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />” komutları yazılırsa
program cihaz menüsünde bulunur ve sorunsuz açılır. Örnek bir manifest xml dosyası:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.atmaca.rssasus"
android:versionCode="1"
android:versionName="1.0">
<uses-sdk android:minSdkVersion="10" />
<uses-permission android:name="android.permission.INTERNET" />
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".RssReaderActivity"
android:label="@string/app_name">
<intent-filter>
22
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".ders"
android:label="@string/app_name" >
<intent-filter>
<action android:name="com.atmaca.rssasus.DERS" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
</application>
</manifest>
2.3.1. Java Compiler Hatası
Yazılım süresince sık sık denk gelen bu hata derleyici sürümünden kaynaklanır.
Örneğin program “Compiler 1.4” sürümü ile yazılırken, programa dahil edilen “public
void onClick(View arg0)” komutu 1.4 derleyicisinde çalışmaz. Hata java jdk
derleyicisinin 1.5 seviyesinde çalışmasıdır. Şekil 22‟ de hata ekranı gösterilmiştir.
Şekil 22. Java compiler hata ekranı
23
Bu hata sonucunda hatalı komut dizini üzerinde “the method onClick(View) of type
new View.OnClickListener(){} must override a superclass method.” hata bildirisine
rastlanır. Hatanın çözümü için şu adımlar izlenmelidir:

“Package Explorer” penceresinde, üzerinde çalışılan projeye gelinir sağ tıklanır
ve properties bölümüne girilir. Şekil 23‟ de hata düzeltilme aşamaları
gösterilmiştir.
Şekil 23. Java compiler hatasının düzeltilmesi

Properties bölümünden java compiler sekmesine girilir. Derleyici ayarlarını aktif
etmek için “enable project specific settings” kutucuğuna tıklanır. Son olarak
“Compiler compliance level” sekmesindeki derleyici sürümü 1.5 olarak
ayarlanır.
24
3. SONUÇLAR
Bu çalışma ile arayüz programı gerçeklenmesi amaçlanmıştır. Bu amaçlar
doğrultusunda;
1. Java kodları ile ana ekrandaki butonlar yetkilendirilmiş, splash ekranının 5
saniye boyunca ekranda durması için gerekli algoritmalar ve kodlar
yazılmıştır. Ders programı tercih ekranında 1. ve 2. öğretim ders
programlarının görevlendirmesi gerçekleştirilmiştir. Her butona basıldığında
buton sesinin çalması sağlanıp butonlara basıldığında ilgili sayfaya
yönlendirme yapılmıştır. Aynı şekilde geri butonuna basıldığında bir önceki
ders programları tercih sayfasına ulaşılması sağlanmıştır.
2. Xml Kodları ile splash ekranı görevini alacak olan açılış ekranı içeriğini
oluşturmak için ekran içerisine acilis isimli fotoğraf dosyası atılıp ekran ve
imaj pozisyon ayarları tanımlanmıştır. Gene xml kodları yardımıyla table row
ve table layout komutları ile iç içe tablolar oluşturulup istenilen arka plan
dizaynı yapılmıştır.
25
4. PROBLEMİN TANIMI VE VARILMAK İSTENEN HEDEF
Bu proje ile duyuru panosu internet üzerinden ana bilgisayar ile haberleşerek,
görevlendirilebilen
çok
fonksiyonlu
hedeflendirilmektedir.
26
bir
sistemin
gerçekleştirilmesi
5. KATKILAR
Projenin gerçekleştirilmesi sonucunda teoride anlatılan programlama ve haberleşme
bilgisi lisans düzeyinde fayda sağlanmaktadır.
27
6. YÖNTEM
Verici ve alıcı birimler arası internet haberleşme formatına göre veri alış verişi
yapılacaktır. Aynı zamanda oluşturulacak dokunmatik alıcı ekranı sayesinde verinin
hatasız iletilip iletilmediği kontrol edilecektir.
Donanım için gereken malzemelerin tamamı satın alınacaktır. Programların
duyuru panosuna atılması ve haberleştirilmesi proje ekibince yapılacaktır.
28
7. ÇALIŞMALAR
Bu çalışmada proje ekibi beraber çalışmaktadır. Proje ekibi ve çalışma konuları
Tablo 2‟de verilmiştir.
Tablo 2. Proje ekibi
Konu
Teorik altyapının oluşturulması.
Sistemin blok diyagramının hazırlanması.
Gerekli yazılımların tespiti.
Evren
Gerekli donanımların tespiti.
ATMACA ve
Baskı devre şemalarının hazırlanması.
Murat
Donanımın üretimi ve testi.
ÇAKIL
Yazılım geliştirme.
Proje raporlarının hazırlanması.
Projenin sunumu ve savunulması.
29
8. ÇALIŞMA TAKVİMİ
Çalışma takvimi tüm döneme yayılmıştır. Projenin ocak ayına kadar tamamen
sonuçlanması hedeflenmiştir. Tablo 3‟de verilmiştir.
Tablo 3. Çalışma takvimi
Eylül
İş
Programlama
Haberleşme
Altyapısının
Oluşturulması
Sistemin
Edilmesi
Bitirme
Yazılması
Ekim
ve
Test
Tezinin
30
Kasım
Aralık
Ocak
9. ARAŞTIRMA OLANAKLARI
Projenin donanımsal olarak gerçekleştirilmesinde KTÜ Sayısal İşeret İşleme
Laboratuvarının araç-gereç altyapısı kullanılacaktır. Aynı zamandan sistemin testi de
Sayısal İşaret İşleme Laboratuvarında olacaktır.
31
10. KAYNAKLAR
[1]. P. J. Deitel and H. M. Deitel, “Java How To Program”, 7. Baskı, Prentice
Hall, New Jersey, ABD, 1692, 2006.
[2]. G. Marko, “Learning Android”, 1. Baskı, O‟Reilly Media, ABD, 245, 2011
[3]. Eclipse websitesi. [Online]. Mevcut: http://www.eclipse.org/downloads/
[4]. Android
Developer
websitesi.
[Online].
Mevcut:
http://developer.android.com/sdk/index.html
[5]. Oracle
websitesi.
[Online].
http://www.oracle.com/technetwork/java/javase/downloads/jdk-7u3download-1501626.html
32
Mevcut:
11. ÖZGEÇMİŞ
Evren ATMACA 1985 yılında İstanbul‟da doğdu. İlk ve orta eğitimini İstanbul‟un Eyüp
ilçesinde tamamladıktan sonra Kağıthane Profilo Anadolu Teknik Lisesi‟ne devam etti.
2004‟de liseden mezun oldu ve İstanbul Üniversitesi Teknik Meslek Yüksekokulu
Endüstriyel Elektronik bölümüne kayıt yaptırdı. Eğitim süresince eğitim stajlarını
tamamladı ve 2007‟de üniversiteden mezun oldu. 2008‟de Karadeniz Teknik
Üniversitesi Elektronik Mühendisliği bölümünü kazandı. Halen K.T.Ü. Elektrik
Elektronik Mühendisliği 5. sınıf öğrencisi olan Evren Atmaca yabancı dil olarak
İngilizce bilmektedir.
Murat ÇAKIL 1990 yılında Niğde‟de doğdu. İlk ve orta eğitimini Niğde merkezde
tamamladıktan sonra Niğde Anadolu Lisesi‟ne devam etti. 2008‟de liseden mezun
olduktan sonra Karadeniz Teknik Üniversitesi Elektrik Elektronik Mühendisliğine kayıt
oldu. Halen K.T.Ü. Elektrik Elektronik Mühendisliği 5. sınıf öğrencisi olan Murat Çakıl
yabancı dil olarak İngilizce bilmektedir.
33
Karadeniz Teknik Üniversitesi
STANDARTLAR VE
Mühendislik Fakültesi
FORMU
Elektrik-Elektronik Mühendisliği Bölümü
Tasarım Projesinin hazırlanmasında Standart ve Kısıtlarla ilgili olarak, aşağıdaki
soruları cevaplayınız.
KISITLAR
1. Projenizin tasarım boyutu nedir? Açıklayınız.
Bir elektronik duyuru ve h haberleşme cihazının tasarımı, üretimi ve
gerçekleştirilmesi hedeflenmektedir. Sistem tamamen proje ekibi tarafından
hazırlanacaktır.
2. Projenizde bir mühendislik problemini kendiniz formüle edip, çözdünüz mü?
Hayır.
3. Önceki derslerde edindiğiniz hangi bilgi ve becerileri kullandınız?
Hayır.
4. Kullandığınız veya dikkate aldığınız mühendislik standartları nelerdir?
Projede internet haberleşmesi gerçekleştirilecektir. İnternet haberleşme standartları
projede temel alınmıştır ve standart gerektiği gibi uygulanacaktır.
5. Kullandığınız veya dikkate aldığınız gerçekçi kısıtlar nelerdir?
a) Ekonomi
Malzeme.seçiminde uygulama için gereken şartları taşıyan, en düşük maliyetli
ürünler seçilmiştir. Sistemin üretim maliyetinin en az olması amaçlanmıştır.
b) Çevre sorunları:
Projede çevreye zararlı olan herhangi bir madde kullanılmayacaktır. Tüm
montaj işleminde kurşunsuz lehim kullanılacaktır.
c) Sürdürülebilirlik:
Sistemin gelişime açık olduğu bilinmekte ve bunun sürdürülebilmesi
amaçlanmıştır.
d) Üretilebilirlik:
Geliştirilecek sistem ülkemizde kolaylıkla üretilebilir niteliktedir.
e) Etik:
Sistemin tasarımı tamamen proje ekibi tarafından yapılacak ve etik kuralları
göz önünde tutulacaktır.
f) Sağlık:
Geliştirilecek sistem sağlık açısından .herhangi bir risk taşımamaktadır.
g) Güvenlik:
Geliştirilecek sistem herhangi bir güvenlik riski barındırmamaktadır.
h) Sosyal ve politik sorunlar:
Üretilmesi amaçlanan proje ve ürün sosyal ve politik açıdan hiçbir soruna
sebebiyet vermeyecektir.
Not: Gerek görülmesi halinde bu sayfa istenilen maddeler için genişletilebilir.
Projenin Adı
ANDROİD TABANLI DOKUNMATİK DUYURU PANOSU
Projedeki Öğrencilerin adları
Tarih ve İmzalar
Evren ATMACA ve Murat ÇAKIL
04.01.2013
34
Download