3. Android, Linux çekirdeğini kullanan bir
işletim sistemidir.
Google, Open Handset Alliance ve özgür
yazılım toplulukları tarafından geliştirilmektedir.
• Android Nedir ?
4. Temel olarak dokunmatik ekranlar için tasarlanan
Android, düşük maliyetli ve kişiselleştirilebilen işletim
sistemi arayan yüksek teknoloji cihazlar arasında da
popülerdir.
Başlarda bu sadece tablet ve akıllı telefonları
kapsasa da, günümüzde televizyonlar, arabalar, oyun
konsolları, dijital kameralar ve saatler gibi cihazlarda da
kullanılmaya başlamıştır.
• Android Nedir ?
5. • Tarihçesi
Bilinenin aksine, Android projesi Google
tarafından başlatılmamıştır.
Android, Silikon Vadisi’nde birkaç kişinin
bir araya gelerek kurdukları şirket olan Android
Inc.’in oluşturdukları bir işletim sistemidir. Şirket,
2005 Temmuz’unda Google tarafından satın
alınmıştır.
6. • Tarihçesi
2003 yılında kurulan Android Inc.’in
kurucuları Danger, Wildfire Communications, T-
Mobile, WebTV gibi şirketlerden gelmektedir.
Google bu kişileri Android takımı altında
toplamış ve bugün en çok tercih edilen mobil
işletim sisteminin geliştirilmesine öncülük
etmiştir.
7. • ANDROİD OS Mimarisi
Android mimarisi, diğer işletim sistemleri
mimarisine kıyasla daha fazla görev katmanına
sahip bir mimaridir.
Örneğin; Win. NT mimarisinde user ve
kernel olarak iki seviye vardır ve bu iki seviye
net bir çizgiyle ayrılmıştır.
Fakat Android mimarisinde beş katmanlı
bir yapı kullanılmıştır.
8.
9. • Mimarisi
Android mimarisi,
• Linux çekirdeği
• Kütüphaneler
• Android çalışma zamanı (runtime)
• Uygulama geliştirme çatısı
• Uygulamalar katmanı
10. • Temel yapı (Linux çekirdeği)
Android OS, Bellek yönetimi (Memory
Management), Süreç yönetimi (Process Management),
güvenlik, sürücü hizmetleri gibi temel işletim sistemi
görevlerini Linux Kernel ile gerçekleştirmektedir.
Donanım kaynaklarına erişim de Linux Kernel ile
gerçekleştirilir.
11. • Temel yapı (Linux çekirdeği)
Android, bahsi geçen özellikleri linux kernel’dan
almış olsa bile bunları mobil cihazlara uyarlamak için bazı
iyileştirmelere ve geliştirmelere de gitmiştir. Bu özellikler
sırasıyla
Süreçler ve iş parçaları (Process & Thread)
o Süreçlerin Yaşam Döngüsü (Process Lifecycle)
o İş Parçaları (Threads)
o Bellek Yönetimi (Memory Management)
o Güvenlik (Security)
12. • Kütüphaneler (Libraries)
Android’in çeşitli sistem bileşenlerinin
kullanılabilmesi için gerekli olan C,C++
kütüphanelerinin bulunduğu katmandır.
Örneğin veritabanı uygulamaları için kullanılan
SQLite veritabanının kütüphanesi bu katmandadır.
Yine benzer şekilde medya uygulamalarının da
kütüphaneleri bu katman içindedir.
13. • Kütüphaneler (Libraries)
o İnternet tarayıcısı (browser) motorlarının çalışması için
Webkit,
o Görüntüleme kontrolünü yapan Surface Manager,
o Grafik işlemleri için OpenGL,
o Ses ve video işlemleri için gereken Media Framework,
o Veri yapıları kontrolü ve düzenlenmesi için SQLite
gibi yapılar bulunur.
14. • Android Çalışma Zamanı (Runtime)
Bu bölüm Linux çekirdeğindeki
kütüphanelerin Java ile birleştiği bölümdür.
İki önemli bileşeni vardır.
Bunlar temel Java kütüphaneleri ve Dalvik
Sanal (virtual) Makinesi'dır.
15. • Android Çalışma Zamanı (Runtime)
Android uygulamalarının tamamına yakını
Java diliyle yazıldığından bu uygulamaların
çalıştırılmasında bir Java Sanal Makinesi’ne
ihtiyaç vardır.
Mobil cihazlardaki kaynakların oldukça
sınırlı olması, Android için yeni bir sanal
makineye ihtiyaç duyulmasına sebep olmuştur.
16. • Android Çalışma Zamanı (Runtime)
Google bu sebeple Android için Dalvik
Sanal Makinesini geliştirmiştir.
Android de her uygulama kendi sürecinin
Dalvik VM’den aldığı bir oturumda yürütür.
Dalvik VM aynı anda çok sayıda sürece oturum
hakkı verebilir. Yani birden fazla process zaman
paylaşımlı olarak çalışabilmektedir.
17. • Android Çalışma Zamanı (Runtime)
Android 5.0 Lollipop sürümüyle beraber
de artık Dalvik hayatımızdan kalktı ve ART
(Android Run Time) yapısına geçildi.
ART, uygulamaların doğrudan makine
dilindeki donanım bileşenleriyle, herhangi bir
emülatör kullanmadan iletişime geçmesi olarak
anlatılabilir.
18. • Uygulama Çatısı (Application Framework)
Android’in tercih edilmesinde uygulamalar
büyük rol oynamaktadır. Bu yüzden bu tercih
sebebinin, yani uygulamaların işletim sistemi
tarafından kusursuz yönetilmesi gerekir. Androidde
uygulamaların yönetimi Application Framework
tarafında gerçekleştirilir.
19. • Uygulama Çatısı (Application Framework)
Bu katmanın görevleri arasında; uygulamaya ait
kaynakların yönetimi, uygulamalar arası veri
paylaşımının yönetimi, uygulamaların yaşam
döngülerinin yönetilmesi gibi önemli uygulamalar
vardır.
Ayrıca uygulamanın donanım isteklerinin de
yönetilmesini gerçekleştirir.
20. • Uygulamalar Katmanı (Applications)
Applications katmanı İşletim sisteminin
kullanıcıya görünen yüzüdür de denebilir. Bu
katmanda kullanıcı tanımlı uygulamalar bulunur.
Android uygulamalarının tamamına yakını Java
programlama diliyle geliştirilir.
21. • Android Mimarisi
• Çekirdek: Linux kernelidir. Güvenlik, hafıza yönetimi, süreç
yönetimi, ağ yığınları ve sürücü modellerini içermektedir.
• Android Runtime: Sanal makinedir. Dalvik Sanal Makinesini de
içermektedir. 5.0 ile Dalvik kaldırılmış ve ART'ye geçilmiştir.
• Kütüphaneler: Veritabanı kütüphaneleri, web tarayıcı
kütüphaneleri, grafik ve arayüz kütüphanelerini içermektedir.
• Uygulama Çatısı: Uygulama geliştiricilere geniş bir platform
sunan kısımdır.
• Uygulama Katmanı: Doğrudan Java (programlama dili) ile
geliştirilmiş uygulamaları içermektedir.
22. • Özellikleri
• Handset çizimler
Sistem, VGA, 2D grafik arşivler, OpenGL ES 3.0
tabanlı 3D Grafik arşivlerine ve geleneksel telefon
çıkışlarına son derece kolay uyum sağlar.
• Depolama
Bilgi depolama amaçlı SQLite kullanılmaktadır.
• Bağlanabilirlik
Android, GSM, Bluetooth, EDGE, 3G,LTE(4G) NFC
ve Wi-Fi bağlantısını destekler.
23. • Mesajlaşma
Hem SMS hem de MMS desteği vardır.
• Web Tarayıcısı
Android'in web tarayıcısı açık kaynak kodlu
WebKit application framework üzerine kuruludur.
• Medya Destekleri
Android, MPEG-4, MP4, H.264, MP3, ve AAC,
AMR, JPEG, PNG, GIF gibi ses/video/resim
formatlarını desteklemektedir.
• Özellikleri
24. • Ek donanımları
Android, titreme önlemeli fotoğraf/video kameralarda,
dokunmatik ekranda, GPS, pusulalar ve ivmeölçerlerde son derece
yeteneklidir.
• Özellikleri
o Google Vpn
Android işletim sistemi için 5.0 ve sonraki sürümler için gelmiştir.
o Uygulama izinleri
Android Sürümü Olan 6.0 ile kullanıcıların uygulama izinlerini el ile kontrol edebilmektedir.
o Parmak izi desteği
Android Marshmallow 6.0 ile destek gelmiştir.
o Çoklu-pencere
Android 7.0 Nougat ile gelmiştir.
o Vulkan API
Android 7.0 Nougat ile gelmiştir.
26. • Sürümler
Logo Sürüm Kod Adı Yayın Tarihi
1.1 Astro 9 Şubat 2009
1.2 Bender 16 Mart 2009
1.5 Cupcake 30 Nisan 2009
1.6 Donut 15 Eylül 2009
2.0
2.1
Eclair
26 Ekim 2009
Ocak 2010
2.2 Froyo 20 Mayıs 2010
27. • Sürümler
Logo Sürüm Kod Adı Yayın Tarihi
2.3 Gingerbread 6 Aralık 2010
3.0
3.1
3.2
Honeycomb
Şubat 2011
Temmuz 2011
Kasım 2011
4.0 Ice Cream Sandwich 19 Ekim 2011
4.1
4.2
4.3
Jelly Bean
9 Temmuz 2012
29 Ekim 2012
24 Temmuz 2013
4.4 KitKat ® 31 Ekim 2013
28. • Sürümler
Logo Sürüm Kod Adı Yayın Tarihi
5.0
5.0.1
5.0.2
5.1.0
5.1.1
Lollipop
12 Kasım 2014
2 Aralık 2014
19 Aralık 2014
10 Mart 2015
6.0 Marshmallow 5 Ekim 2015
7.0 Nougat 22 Ağustos 2016
29. • Nougat Android 7.0
Android 7.0 Nougat ile gelen öne çıkan özellikleri
sıralamak gerekirse;
Çoklu pencere / aynı ekranda iki uygulama çalıştırma
Yenilenen bildirim merkezi
Yeni bildirimleri kolay yönetebilme ve bildirim merkezinden
cevap verme
Yeni bildirim merkezi artık iki sekmeli yapıda. İstediğiniz
ikonu ekleyerek, daha fazla özelliğe hızlı erişim
sağlayabiliyorsunuz.
Yenilenen ayarlar menüsü ile daha fazla detayı görebiliyor
ve daha az tıkla işlem yapabiliyoruz.
30. • Nougat Android 7.0
Yenilenen ayarlar menüsü ile daha fazla detayı
görebiliyor ve daha az tıkla işlem yapabiliyoruz.
Bildirimlerin ayarları zenginleştirildi. Artık her
bildirimin gözükmesini engelleyebileceğiz.
Bildirimdeki ikonlara uzun basarak, ayarların ilgili
menüsüne gidebilme özelliği eklendi
Batarya grafiği yenileniyor
Gece modu
31. • Uygulama Geliştirme
• Google, Android sistemi üzerinde çalışan
Google Play marketteki oyun ve uygulamalar
üzerinde aldığı reklamları yayınlayarak para
kazanmaktadır.
• Android'in desteklenen uygulama uzantısı
".apk"dır.
32. • Geliştirme
12 Kasım 2007'de OHA, Android'in yazılım geliştirme
teçhizatının önizlemesini yayınlamıştır ve bu önizleme,
geliştirici ve hata giderici, kütüphane setleri, aygıt
emülasyonu, dökümantasyon, örnek tasarılar, eğitim, SSS ve
fazlasını içermektedir.
Geliştiriciler, eğer Windows 8, 10 veya Mac OS
çalıştıran x86 tabanlı ya da Linux kullanıyorlarsa Android-
SDK'yı indirip kurmaları gerekmektedir. Gereklilikler şunları da
kapsamaktadır:
• Java Development Kit
• Apache Maven veya Gradle
• Eclipse (yazılım) veya Android Studio
33. • Kurulum
Andorid-x86
Android işletim sistemini bilgisayarınızda
çalıştırmanızı sağlayan bir open source (açık kaynak)
projedir.
www.android-x86.org sitesinden istediğimiz sürümü
indirerek kurulum yapabiliriz.
78. • Dev Tools
Google tarafından hazırlanan eklentidir,
Android projelerinizin geliştirme ortamındaki
fonksiyonları daha da geliştirmenize olanak
sağlar.
79. • Dosya Yöneticisi
Android için tasarlanmış tam kapsamlı bir
dosya yöneticisi ve arayüz düzenleme aracı.
Mobil cihazları kişiselleştirmek için
yararlanabileceğiniz uygulamayla klasör
yönetimi ve düzenlemesinden basit arayüz
tasarım değişikliklerine kadar her şeyi
yapabileceksiniz.
83. • RSS Reader
Çeşitli internet siteleri tarafından yayınlanan
haber vb. içeriğin tek bir ortamdan topluca
izlenebilmesine olanak sağlayan yeni bir içerik
besleme yöntemidir.
86. • Terminal Emülatörü
Android Terminal Emulator, Android cihazınızda
Linux işletim sistemini taklit etmenize izin veren
bir uygulamadır, böylece Linux komut satırını
kullanabilirsiniz.
87. • WebView Browser..
Android system
webview basit olarak
Chrome tarafından
desteklenen ve Android
uygulamalarının web
içeriklerini
görüntülemesini
sağlayan bir sistem
olarak tanımlanabilir.
88. • Android Terminal Emulator
Android Terminal Emulator, Android
cihazınızda Linux işletim sistemini taklit
etmenize izin veren bir uygulamadır,
böylece Linux komut satırını
kullanabilirsiniz.
Gereksinimler
• Android 1.5 ya da üstü sürüm gerektirir.
89. • Android Terminal Emulator
$ su
Bu komut kullanıcı dizininden kök dizinine geçmeye
yarar. Daha sade dille yetkili kullanıcı haklarına izin verir.
90. • Android Terminal Emulator
$ ls
Geçerli olan dizindeki dosya ve klasörleri listeleyerek
gösterir.
91. • Android Terminal Emulator
$ cd
Dizini değiştir, bu komut belirtilen dizine geçiş yapar.
92. • Android Terminal Emulator
$ cd ..
Geçerli olan dizinden önceki dizine geçer.
93. • Android Terminal Emulator
$ date
Ay, yıl, gün ve saat bilgilerini gösterir.
95. • Android Terminal Emulator
$ ls -l
Geçerli dizindeki dosyaları ve klasörleri ayrıntılarıyla listeler.
$ clear
Bu komuttan önce yazdığınız bütün komutları konsol ekranından temizler.
$ whoami
Sistemde hangi kullanıcıların olduğunu gösterir.
$ top
Çalışan uygulamaları ve bellek tüketimlerini gösterir.
$ pwd
Hangi dizinde olduğunuzu gösterir.
$ free
Cihazdaki bellek kullanımını gösterir.
96. • Android Terminal Emulator
$ uname -s
Sistemin ismini gösterir.
$ uname -a
Bütün cihaz bilgilerini gösterir.
$ bootanimation
Cihazın açılış animasyonunu ön izler.
$ mkdir
Dizin oluşturur.
$ rmdir
Dizin kaldırır.
$ poweroff
Cihazınızı tamamen kapatır.
97. • Servis Kodları
Servis kodlarının işlevselliği telefonunuzun
modeli, Android sürümünün güncelliği ve GSM
operatörünüze göre farklılık gösterebilir. Bu kodlar
farklı telefonlarda farklı arayüzlerle karşınıza
çıkabilir. Ama kodların işlevleri tüm telefonlarda aynı
olacaktır.
98. • Servis Kodları
Android'in sadece
kodlarla girebileceğiniz
"Testing" bölümüne girmek
için telefonunuzun arama
ekranına *#*#4636#*#*
tuşlamanız yeterli.
99. • Servis Kodları
Menü içerisinde
telefon, batarya, Wifi ve
kullanım ile ilgili temel
bilgi ve istatistikleri
görebiliyorsunuz.
100. • Servis Kodları
Bu alanda IMEI
numrasını, GSM
bilgilerini ve bağlı
olduğunuz internet ağını
görmek mümkün.
Phone İnformation
102. • Servis Kodları
Batarya bilgi
bölümünde ise
bataryanızın voltaj
durumu, teknolojisini,
batarya doluluk
seviyesini sıcaklığını
öğrenebiliyorsunuz.
Battery İnformation
103. • Servis Kodları
"Kullanım istatistikleri"
bölümünde ise hangi
programı ne kadar
kullandığınız hakkında
bilgiler mevcut.
Usage Statistics
104. • Servis Kodları
Wifi bilgi ekranında
ise kablosuz internet
bağlantı ayarlarını
görebilir ve
değiştirebilirsiniz.
Wi-Fi İnformation
105. • Servis Kodları
" *#0*# " yazarak
girdiğiniz menüde cihazın
titreşim, renk, dokunmatik
ekran, hoparlör gibi çeşitli
teknik özelliklerini test
edebileceğiniz ekran geliyor.
106. • Servis Kodları
Telefonun test aşamasında kullanılan bu kodlar ile
birlikte örneğin Red butonuna tıklayarak ekranı
kıpkırmızı yapabiliyorsunuz.
Vibration ile birlikte telefonun titreşimini anında
hissedebilirsiniz.
LED butonuna tıkladığınızda telefonunuzun LED
ışığı yanar ve farklı renklere dokundukça geçiş
yapabilirsiniz.
Touch ile birlikte telefonun dokunmatik
arayüzünün hassasiyetini görebilmeniz mümkün.
(Diğerlerinin aksine bu menüden çıkmak için tüm
kutucukları dolu/yeşil hale getirmeniz gerekiyor.)
Speaker ile birlikte ise telefonun ses kalitesini
ölçebiliyorsunuz.
MegaCam ile kameranızı açabilirsiniz.
Bu tuşlardan herhangi birine bastıktan sonra geri
dönmek isterseniz tekrar ekrana dokunmanız
yeterli.
107. • Servis Kodları
IMEI Numarası görüntüleme: *#06#
RAM Bellek versiyonu görüntüleme: *#*#3264#*#*
FTA SW versiyonu görüntüleme: *#*#1111#*#*
FTA HW versiyonu görüntüleme: *#*#2222#*#*
Dokunmatik ekran versiyonu görüntüleme: *#*#2663#*#*
Servis modunu aktive etme: *#*#197328640#*#*
Alan testi: *#*#7262626#*#*
Format atma: *2767*3855#
Fabrika ayarlarına geri dönme: *#*#7780#*#*
Servis modunu aktive etme: *#*#197328640#*#* veya *#0*#
108. • Servis Kodları
Software ve Hardware bilgisi görme: *#12580*369#
Titreşim ve arka ışık testi: *#*#0842#*#*
Detaylı kamera bilgisi görme: *#*#34971539#*#*
Sistem boşta modu: *#9900#
Ses test etme: *#*#0289#*#* veya *#*#0673#*#*
LCD Display testi: *#*#0*#*#*
Wifi test etme: *#*#232339#*#* veya *#*#528#*#* veya
*#*#526#*#*
Telefon kilit durumunu görme: *#7465625#
109. • Değerlendirme Soruları
1-Aşağıdakilerden hangisi Android 5.0 sürümü ile
birlikte Dalvik sanal makinesinin yerine kullanıma
geçilmiştir?
A) ART
B) Hyper-V
C) OpenVZ
D) Virtual Iron
110. • Değerlendirme Soruları
2-Android'in web tarayıcıları hangi açık kaynak
kodlu yerleşim motorunu kullanılır?
A) Gecko
B) WebKit
C) Triendt
D) Presto
115. • Değerlendirme Soruları
7-Hangisi Android mimarisinin katmanlarından biri
değildir?
A) Linux çekirdeği
B) Uygulama Çatısı
C) Medya Desteği
D) Kütüphaneler
116. • Değerlendirme Soruları
8-Hangisi Android Nougat 7.0 ile birlikte gelmiş
özelliklerden değildir?
A) Gece Modu
B) Çoklu Pencere
C) Batarya Grafiği
D) Google VPN
117. • Değerlendirme Soruları
9- Google'ın Android için geliştirdiği bir paket
yöneticisi ve elektronik medya dağıtım/satış
platformu hangisidir?
A) Google Play Store
B) Ovi Store
C) Apple Store
D) Blackberry apps
118. • Değerlendirme Soruları
10-Hangisi Android işletim sisteminin kullanıcıya
görünen yüzüdür?
A) Uygulamalar Katmanı
B) Android Çalışma Zamanı
C) Linux Çekirdeği
D) Kütüphaneler
119. • Değerlendirme Soruları
11-Android işletim sistemini bilgisayarınızda
çalıştırmanızı sağlayan bir open source (açık kaynak)
projesine____________ denir.Android X-86
124. • Değerlendirme Soruları
16- ( ) $ cd .. Geçerli olan dizinden önceki dizine
geçer.
17- ( ) $ ll Kök dizine geçmeye yarar.
18- ( ) $ ls Geçerli dizindeki dosya ve klasörleri
listeler.
19- ( ) $ rmdir dizin oluşturur.
20- ( ) $ exit terminal emulator’dan çıkış yapar.
D
Y
D
Y
D