42
Asude Sena ÖLMEZ İlim Betül YAVUZ Levent YAYLA Mehmet ÖZCAN Nur UÇAR

Standardization Android Slide

Embed Size (px)

Citation preview

Page 1: Standardization Android Slide

Asude Sena ÖLMEZ

İlim Betül YAVUZ

Levent YAYLAMehmet ÖZCAN

Nur UÇAR

Page 2: Standardization Android Slide

ANDROİD TARİHİ

Page 3: Standardization Android Slide

Android; Google ve Open Handset Alliance tarafından, mobil cihazlar için geliştirilmekte olan, Linux tabanlı özgür ve ücretsiz birişletim sistemidir. Sistem açık kaynak kodlu olsa da, kodlarının ufak ama çok önemli bir kısmı Google tarafından kapalı tutulmaktadır.

Page 4: Standardization Android Slide

Google tarafından ücretsiz olmasının sebebi, sistemin daha hızlı ve çabuk gelişmesi, birçok popüler marka tarafından kullanılması ve bu sayede reklamlarını daha fazla kişiye ulaşmasını sağlamaktır. 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.

Page 5: Standardization Android Slide

Android, aygıtların fonksiyonelliğini genişleten uygulamalar yazan geniş bir geliştirici grubuna sahiptir. Android için halihazırda 1 milyondan fazla uygulama bulunmaktadır. Google Play Store ise, Android işletim sistemi uygulamalarının çeşitli sitelerden indirilebilmesinin yanı sıra, Google tarafından işletilen kurumsal uygulama mağazasıdır. Geliştiriciler, ilk olarak aygıtı, Google'ın Java kütüphanesi aracılığıyla kontrol ederek Java dilinde yazmışlardır.

Page 6: Standardization Android Slide

Temmuz 2005'te Google, Android Inc.'i almış ve ufak bir başlangıç şirketini Palo Alto'da kurmuştur. Android'in kurucuları, Google'a çalışmak için giden Andy Rubin (Danger'in kurucusu), Rich Miner (WildFire'ın kurucusu), Nick Sears ve Chris White'dır. (WebTV'de çalışan ilk mühendislerden biri). Bu arada, Android Inc.'in işlevleri daha önce yaptıkları mobil işletim sistemleri kadar iyi bilinmemektedir ve bu da Google'ın Mobil Cihazlar pazarına gireceği söylentisini başlatmıştır. Buna karşın, bu süreç içinde pazara ne çeşit ürünle çıkacakları tam olarak belli olmamıştır.

Page 7: Standardization Android Slide

Google'da, ekip (Rubin tarafından izin verilen) Linux tabanlı, taşınabilir cihazlar için geliştirdikleri, esnek, güncelleştirilebilir İşletim Sistemini yazmışlardır. Raporlara göre Google çoktan donanım serilerini, yazılım partnerlerini ve taşınabilir cihazlarda çeşitli derecelerde birlikte çalışacağı sinyalini vermiştir.Open Handset Alliance, 5 Kasım 2007'de Android'i kurduğunu duyurmuştur ve ardından 34 adet donanım, yazılım ve telekomşirketi, mobil cihazlar için telif hakkı olmayan bir işletim sisteminin teknolojinin gelişimi için yararlı olduğu konusunda hemfikir olmuşlardır.

Page 8: Standardization Android Slide

ANDROİDALTYAPISI

Page 9: Standardization Android Slide
Page 10: Standardization Android Slide

 Android işletim sistemi mimarisinde en üst katman olarak bilinir ve uygulama katmanı olarak adlandırılır. 

Application Katmanı

Android işletim sistemi mimarisinde 2. katman olarak gözümüze çarpmakta olan Application Framework katmanı adındanda anlaşılacağı üzere uygulamaların işletim sistemi ile etkileşimini sağlayacak olan servislerin bulunduğu(aracılığını yapan) katmandır.

Applications Framework Katmanı 

Page 11: Standardization Android Slide

Android işletim sistemi mimarisinde 3. katman olarak göze çarpan Libraries katmanı (native-libraries olarakta karşımıza çıkabilir) Android işletim sistemi içerisine yerleştirilmiş diğer araç kütüphanelerini bulunduran katmandır.

Libraries Katmanı 

Uygulamaların çalışma zamanında ele alarak bytecodelarının okunup, işlemci üzerinde yorumlanmasıyla çalışmakta iken Ahead-of-Time yani çalışma öncesi derleme ile bu yapı Uygulamaların kurulma aşamasında derlenip çalışma esnasında derlenme ile zaman kaybetmemesi sağlamaktadır. Buda Android için daha az işlemci ve ram anlamına gelmektedir.

Android Runtime Katmanı

Page 12: Standardization Android Slide

Android işletim sisteminde 5. Katman olarak Linux-Kernel gözümüze çarpıyor olsada gerçek anlamda en alt katman işletim sisteminin 0. seviyesidir. İşletim sistemi ile donanım ( hardware ) arasındaki iletişimi sağlayan tabiri yerinde ise android işletim sisteminin kalbidir. Linux-Kernel, Linux olarak adlandırıyor olsakta bilinen linux kernelden bağımsız olarak Android için özel olarak geliştirilmiştir. Yani bilinen linux çekirdeğinden çalışma prensipleri olarak aynı olsada yapısal olarak farklıdır.

Linux Kernel Katmanı 

Page 13: Standardization Android Slide

ANDROİDDİLİ

Page 14: Standardization Android Slide

Java tabanlı projelerinizi inşa etmenize yarayan bir araçtır. Projelerinizin kaynak kodlarının alıp, jar veya war oluşturma, testleri çalıştırma . Bundan önceki build araçları Ant veya Maven gibiBu build araçlarınında güçlü noktaları vardır.Ant çok esnek olması ,maven kütüphane tanıma sistemi gibi özellikleri yardımcı olur, gradle birçok derleyicinin güçlü yanlarının toplandığı bir derleyicidir ve bize çoğu konuda yardımcı olur. Gradle’ın diğer bir avantajılı yanı ise birden çok projenizi kolayca yönetebilirsiniz. Yönetmekten kasettiğim inşa edebilirsiniz, çalıştırabilirsiniz ve benzeri işler. Var olan projelerinizi, yapısal değişime zorlamadan inşa süreçlerini yukarıda bahsettiğim avantajlarla sarmalar.

Gradle 

Page 15: Standardization Android Slide

Android uygulamalarında ekran tasarımları res klasörü altında bulunan layout dosyaları ile belirlenir. Bu dosyalar xml formatında hazırlanan dosyalardır ve Android uygulamalarına özel etiketler kullanarak görsel öğelerin yerleşimlerini ve özelliklerini bildirirler.Bir ekranın görünümü genellikle iki farklı yerleşim tipi kullanılarak belirlenir. Bunlar RelativeLayout ve LinearLayout olarak ikiye ayrılır.RelativeLayout ile bir nesne istediğimiz yere yerleştirilebilirken LinearLayout’ta dikey veya yatay hizalama ile yerleştirilir.

Layout

Page 16: Standardization Android Slide

Activity, androidde sayfalara karşılık gelir. Activityler stack mantığıyla çalışır. En son açılan en üsttedir, ilk açılan en alttadır.Yaşam döngüsü aşağıdaki gibidir.

Activity

Page 17: Standardization Android Slide
Page 18: Standardization Android Slide

 Activity ile yapılan uygulamalarda hep yeni bir activity açarak yapılır,fragment sayfanın genel teması bozulmadan sadece belirli bir kısmın değişmesini sağlayan yapılardır.Daha hızlı çalşır ve şuanda önerilen bir yöntemdir.

Fragment

Page 19: Standardization Android Slide

ManifestAndroidManifest.xml dosyası, herhangi bir Android projesinin olmazsa olmaz dosyasıdır. Uygulamanızın tüm temel bilgileri AndroidManifest.xml içinde belirtilir. Bu dosya xml formatında oluşturulduğu için hem makina hem de insan tarafından okunabilir. Her oluşturulan activity burada tanımlanmak zorundadır yoksa hata ile karşılaşılır.

Page 20: Standardization Android Slide

Java SınıflarıJava sınıfları layout xml’lerinde oluşturulan nesnelerin yönetimi veya internete bağlan veritabanı gibi programsal işlerin goruldugu yerlerdir burda orijinal java sınıfları yerine andoridin java sınıfları kullanılır.Dilin butun özellikleri androidde geçerlidir. Findviewbyid ile layout yapılmış nesneler java içeriklerine bağlanır ve kullanılabilir.

Page 21: Standardization Android Slide

ANDROİDVERSİYONLA

RI

Page 22: Standardization Android Slide

1.0 ALPHA

• Gmail Uygulaması• Kamera Uygulaması• YouTube Video Oynatıcısı• Google Haritalar• Rehber, Takvim ve Web

Tarayıcısı

2008

Page 23: Standardization Android Slide

1.5 CUPCAKE

• Bluetooth Desteği• Kamera Kaydı• Video Gösterimi• Yazı Tahmin Edebilen Klavye• Animasyonlu Ekran Özellikleri• Widget ekleme

30 NİSAN 2009

Page 24: Standardization Android Slide

1.6 DONUT

• Doğru Çeviri yapma• Okuma Özellikleri• WVGA (780x480) Çözünürlüklü

Ekranlara Destek

15 EYLÜL 2009

Page 25: Standardization Android Slide

2.1 Eclair

• Html 5 ve Bluetooth 2.1 Desteği • Sanal Klavye • Yüksek Ekran Çözünürlüğü Desteği ile

Özelleştirilebilen Arayüz Özelliği• Kamera Uygulamasına Flaş Desteği• Dijital Zoom, Sahne Modları, Renk

Efektleri ve Makro Odak Modları

OCAK 2010

Page 26: Standardization Android Slide

2.2 FROYO• 720p Ekran Çözünürlüğü• Wifi Hotspot Özelliği

2.3 Gingerbread• Çoklu Kamera Çoklu Dokunmatik

20 MAYIS 2010

6 ARALIK 2010

Page 27: Standardization Android Slide

3.0 Honeycomb• Holografik Kullanıcı Arayüzü • FLAC Ses Dosyası Çalma Özelliği

ŞUBAT 2011

Page 28: Standardization Android Slide

4.0 Ice Cream Sandwich

• Yüz Tanıma Fonksiyonları • NFC ile Dosya Paylaşımı

özellikleri • 1080p Video Desteği

• Mart 2012'de Android Market'in adı Google Play olarak değiştirildi

19 EKİM 2011

Page 29: Standardization Android Slide

4.1 Jelly Bean

• “Performansı ve Kararlılığı artırır.” teması

• Isınma ve Donma Problemleri Giderilmesi

4.2.2 Jelly Bean Plus

4.2 Jelly Bean• Aynı Anda İki Uygulama

Açma Özelliği

9 TEMMUZ 2012

29 EKİM 2012

• Arayüz Hızı 60 FPS

Page 30: Standardization Android Slide

4.3 Jelly Bean

• Çoklu Kullanıcı için Ebeveyn Kontrolü • Oyunlar için OpenGl 3.0 desteği• Diğer Teknolojik Aletlere Bağlanmak için İlk

Akıllı Bluetooth Teknolojisi• Wifi'yı açıp kapatmak yerine otomatik açılıp

kapanabilen akıllı wifi teknolojisi• Uygulama İzinleri Kontrol Edilebilmesi

24 TEMMUZ 2013

Page 31: Standardization Android Slide

4.4 Kitkat

• Görsel Arayüzde Değişiklik• Renklendirilmiş Arayüz• Ram Optimizisyonu • Art (Android Run Time) Sanal Makinesi

Nexus ile deneysel olarak kullanılması

31 EKİM 2013

Page 32: Standardization Android Slide

5.0 Lollipop

• Pil Ömründe İyileştirmeler• Daha Stabil ve Daha Güvenli• Çift Sim Kart Desteğini• 64 bit ve 4 GB RAM desteği

12 KASIM 2014

Page 33: Standardization Android Slide

6.0 Marshmallow

• Yenilenen Uygulama İzinleri• Android Pay• Gelişmiş Parmak İzi Okuyucusu• Pil Ömründe 2 Kata Yakın İyileşme

5 EKİM 2015

Page 34: Standardization Android Slide

GÜNCELLEMELER

Page 35: Standardization Android Slide

Android sisteminde güncellemeler, Nexus, Android One ve Google Play sürümü cihazlar dışında üretici firma tarafından yapılır. Üretici firma açık kaynaklı sistemi alır ve ürettiği cihaza uygun hale getirdikten sonra sistemi kullanır. Android’in açık kaynaklı olması cihaz geliştiricilerine sistem üzerinde istedikleri değişikleri gerçekleştirme özgürlüğü sağlar. Nexus ve Android One cihazlarında güncellemeler Google tarafından sağlanır. Google üretici firmalarla yaptığı ortak bir çalışma içerisinde bu cihazları piyasaya sürer. Cihazların yazılımı Google tarafından verilen saf Android olurken, donanım anlaşma yapılan teknoloji şirketi tarafından üretilir.

Page 36: Standardization Android Slide

Nexus 5X, Nexus 6P, Nexus 6, Nexus 5, Nexus 4, Nexus 7, Nexus 9 ve Nexus 10 cihazlar en yeni Android sürümünü doğrudan Google'dan alır. Bu cihazlar, Google Store'da ilk kullanıma sunulmalarından sonra en az iki yıl süreyle Android sürüm güncellemelerini alır.Bir güncelleme çıktığında bunun cihazınıza ulaşması iki haftayı bulabilir. Güncellemeler ayrıca sistem dosyaları olarak Google’ın fabrika imajları sayfasında da cihazlara özel yayınlanır. Dileyen kullanıcılar buradaki sistem dosyaları aracılığı ile cihazlarını formatlayarak son sürüme beklemeden geçebilirler.

Page 37: Standardization Android Slide
Page 38: Standardization Android Slide

Nexus cihazlar ayrıca, aşağıdaki şartlarda belirtilen süreye göre güvenlik güncellemeleri alırlar:Cihazın Google Store'da ilk kullanıma sunulmasından itibaren üç yılVeya cihazın Google Store'da satışının durdurulmasından itibaren 18 ay Android One telefonlar, Android'in son sürümünü Google'ın donanım iş ortaklarından alır. Google'ın iş ortakları kendi programlarına göre güncellemeler gönderir ve bu güncellemeleri mümkün olan en kısa sürede size ulaştırmaya çalışır. Tüm iş ortakları, telefonun kamuya ilk lansmanından sonra en az on sekiz ay süreyle yazılım güncellemelerini sağlamayı taahhüt eder. Bu, tüm telefonların en az bir tane önemli yazılım güncellemesi ve birden fazla daha küçük güvenlik güncellemesi alacağı anlamına gelir.

Page 39: Standardization Android Slide

Google Play sürümü cihazların güncellemeleri Google tarafından değil, cihaz üreticileri tarafından yönetilir. Google, yeni bir sürüm sunulduğunda sistem güncellemelerinin kısa sürede sağlanması için üreticilerle yakın çalışmalar yürütür. Bir güncelleme çıktığında bunun cihazınıza ulaşması iki haftayı bulabilir. Güncelleme çıktıktan sonra bunu almanız, operatörünüze bağlı olarak iki haftadan fazla da sürebilir.

Page 40: Standardization Android Slide

Akıllı telefonlar pazarında üretilen cihazların çoğunluğu Nexus, Android One ve Google Play sürümü cihazların dışında olduklarından Google tarafından yayınlanan son sürümlerin tüm cihazlara ulaşması zaman alır ve bazı cihazlar için yayınlanmaz. Çünkü üreticilerin çoğunluğu yayınlanan son sürümü mevcut cihazlarına vermek için saf sistemin üzerinde aylar sürebilen çalışmalara başlarlar. Üreticilerin özelleştirmelerinden sonra uygun görülen eski veya yeni üretilen cihazlara güncelleme yayınlarlar. Günümüz itibari ile Android’in son sürümü olan Marshmallow sürümünün cihazlardaki kullanım oranı bu durumu özetlemektedir.

Page 41: Standardization Android Slide
Page 42: Standardization Android Slide