android-seminer

Document Sample
android-seminer Powered By Docstoc
					            Android'e Giriş




Volkan TOKMAK – EMO Ankara Şubesi - Ocak 2012
                    Android Nedir?

➲   2007, Google
➲   Mobil cihazlar için üretilmiş Linux tabanlı işletim
    sistemidir
➲   Açık kaynak kodlu ve ücretsizdir
➲   Mobil cihazlar için gerekli temel uygulamaları içerir
➲   Projenin desteği; Google ve OHA (Open Handset
    Alliance)
         Android Tercih Sebepleri


➲   Belirli bir marka için değil, destekleyen tüm
    markalar için
➲   Ücretsiz
➲   Firma özelleştirebilir, istediği şekilde sunabilir
            Android Tabanlı Cihazlar

➲   HTC Corp. (Desire, HD, Hero, Dream, Magic, Google
    Nexus One, Evo, Droid Eris, Tattoo, Sapphire, Flyer-
    Tablet)
➲   Samsung Group ( Galaxy, Moment, Galaxy Note,
    Galaxy Tab, vs.)
➲   Motorola
➲   Lenovo
➲   Sony
➲   Dell
➲   ….
                 Özellikleri
➲ Çoklu görev(multitasking)
➲ Çoklu dokunuş(multitouch)
➲ Flash desteği
➲ OpenGL
➲ API
     Map, yüz tanıma, yer çekimi   sensörleri, GPS-
      lokasyon
              Handset Çizimler


➲   VGA
➲   2D grafik arşivler
➲   OpenGL ES 1.0 tabanlı 3D Grafik arşivlerine
➲   Geleneksel telefon çıkışlarına son derece kolay
    uyum sağlar
                  Depolama


➲   Bilgi depolama amaçlı SQLite kullanmaktadır
                Bağlanabilirlik


➲   GSM
➲   Bluetooth
➲   EDGE
➲   3G, 4G
➲   Wi-Fi
➲   Hotspot
          Mesajlaşma


➲   SMS
➲   MMS
                Web Tarayıcı


➲   Açık kaynak kodlu WebKit tabanlı tarayıcı
➲   Firefox
➲   Opera
             Medya Destekleri


➲   MPEG-4
➲   MP4
➲   H.264
➲   MP3
➲   AAC
➲   AMR
➲   JPEG
➲   PNG
➲   GIF
                 Ek Donanımlar


➲   Anti-titremeli video/foto kameraları
➲   Touchscreenler
➲   GPS
➲   Pusulalar
➲   Accelerometrelerde
                      Sürümleri

➲   1.1 (?) - 9 Şubat 2009
➲   1.5 (Cupcake) – 30 Nisan 2009
➲   1.6 (Donut) – 15 Eylül 2009
➲   2.0-2.1 (Eclair) – 26 Ekim 2009
➲   2.2 (Froyo) – 20 Mayıs 2010
➲   2.3 (Gingerbread) – 6 Aralık 2010
➲   3.0/3.1/3.2 (Honeycomb) – Şubat 2011
➲   4.0 (Ice cream sandwich) – 2011 4.çeyrek (tablet-
    phone)
         Android 2.3 GingerBread


➲   Linux çekirdeği 2.6.35
➲   UI geliştirildi
➲   SIP(Session Initiation Protocol) ve VoIP
    desteklenmeye başlandı
➲   Yeni ses efektleri eklendi
➲   Yakın alan haberleşmesi(Near field
    communication) desteklenmeye başlandı
➲   Güç yönetimi ve uygulama kontrolü geliştirildi
        Android 3.0 HoneyComb


➲   Linux çekirdeği 2.6.36
➲   3 boyutlu masaüstü özelliği
➲   Multi-tasking yapısı geliştirildi
➲   Multi-core işlemciler desteklenmeye başlandı
➲   Google Talk'da görüntülü görüşme desteklenmeye
    başlandı
Android 1.1
Android 1.5
Android 1.6
Android 2.0
Android 2.2
Android 2.3
               Uygulamalar


➲   200.000+ uygulama
➲   Android Market
➲   İndiroid
➲   SlideMe
➲   AndAppStore
➲   AndroidGear
➲   AppsLib
➲   insydemarket
                 Geliştirme Ortamı


➲   Windows Xp(32Bit), Vista (32-64Bit), Windows 7 (32-
    64Bit)
➲   Linux
➲   Mac OS X (intel)
            Geliştirme Araçları


➲   Android SDK
➲   Eclipse, Netbeans vb.
➲   Emulator ya da Android yüklü cihaz (test için)
➲   Java, JS (PhoneGap vb.), .NET (Mono Project),
    PHP (?)
Mimarisi
               Uygulama Çatısı


➲   Content Providers
      Diğer uygulamalardan veriye erişim ve paylaşım sağlar
➲   Resource Manager
      Non-code kaynaklara erişim sağlar
➲   Notification Manager
      Tüm uygulamalar tarafından status bar'da uyarı
       gösterilmesini sağlar
➲   Activity Manager
      Uygulama yaşam döngüsünü yönetir
Proje Yapısı

      ➲   src: paketler ve Java kodları
      ➲   gen: R.java bulunur. Resource
          erişimi için kullanılır.
      ➲   assets: 3.parti libler
      ➲   res:
            layout: ekran tasarımları
            drawable: imajlar
            values: string degerler
      ➲   manifest: uygulama ayarları
Android Manifest
              Android Manifest


➲   package tagi; projemizin paket adını gösterir
➲   uses-sdk android:minSdkVersion; en az hangi
    Android versiyonunda çalışması gerektiğini
    gösterir
➲   application android:icon tagi; uygulamamıza
    vereceğimiz ikon, android:label ise uygulama adı
    olacaktır
➲   action android:name tagi; aktif olan sınıfı belirtir
               Activity Nedir?


➲   Kullanıcı ile iletişim kurar
➲   Her ekran(sayfa) için Activity olmalı
➲   Layout'lar Activity'lerde kullanılırlar
➲   Başka Activity çağırabilir
➲   Veri gönderip, alabilirler
➲   Form, buton, textbox vs(arayüz elemanları)
    ekranda görüntülenmesidir
➲   I/O için kullanılır
Activity Yaşam Döngüsü
                                      Activity

Method                            Description                                             Next

onCreate()                        İlk yaratıldığında çalışır                              onStart()

         onRestart()              Daha önce stop olmuşsa yeniden çalışmaya                onStart()
                                  başladığında çalışır, peşinden mutlaka onStart çalışır.


         onStart()                Kullanıcıya görünürken çalışır.                         onResume()or onStop()


                     onResume()   Kullanıcı ile etkileşim başlar, tüm inputlar gelmeye    onPause()
                                  başlar.

                     onPause()    Bir önceki activity onResume olurken burası onPause onResume() or onStop()
                                  olur.

         onStop()                 Kullanıcıya uzun süre görünmeyince çalışır.             onRestart()or onDestroy()


onDestroy()                       Tamamne sonlanmadan önce çalışır, finish()              nothing
                                  çağrıldığında çalışır.
                                 Intent

➲   Veri alış-verişini sağlar
➲   Activityler arası geçişi ve servislere erişimi sağlar
➲   Açık intentler
       Alıcı bellidir, genelde Java sınıflarıdır. Örnek; bir aktiviteden
        diğerine geçiş
➲   Dolaylı intentler
       Android'de yüklü olan uygulamaları çağırmada yardımcı olur.
        Örnek; uygulama içinden bir numara aranacak veya mesaj
        atılacaksa ilgili activity intent aracılığıyla çağırılır
                    Services


➲   Görsel arayüz bulundurmaz
➲   Kullanıcı ile doğrudan değil dolaylı olarak etkileşim
    halindedir
➲   Birden fazla olabilir, Servisler birbirinden
    bağımsızdır
            Broadcast Receivers


➲   Yayın alıcısı bileşeni
➲   Görsel arayüz bulundurur
➲   Birden fazla olabilir, birbirinden bağımsızdır
              Content Providers


➲   Bilgi, Veri, İçerik Sağlayıcı bileşeni
➲   Görsel arayüz sunmaz
➲   Kullanıcı ile dolaylı olarak etkileşim halindedir
➲   Birden fazla olabilir, birbirinden bağımsızdır
               Güvenlik ve İzinler


➲   AndroidManifest.xml içinde tanımlanır
➲   Örnek:
      <uses-permission
       android:name="android.permission.RECEIVE_SMS" />
      <uses-permission
       android:name="android.permission.INTERNET" />
Sorular?
Teşekkürler!




 volkantokmak.com

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:10
posted:9/5/2012
language:Turkish
pages:39