Upload
muharrem-tac
View
3.168
Download
1
Embed Size (px)
DESCRIPTION
19 Şubat 2011 tarihinde İTÜ ARI - 1 Teknokent'te düzenlenen Google Technology User Group toplantısında sunduğum Android üzeerinde Adobe Flex ve AIR ile Yazılım Geliştirme sunumu.
Citation preview
Muharrem TaçMuharrem TaçM2 BilişimM2 Bilişim
GelecekonlineGelecekonline
Android NedirAndroid Nedir
Android Nedir ?Android Nedir ?
Google’ın 5 Kasım 2007’de 34 şirket ile birlik olarak Google’ın 5 Kasım 2007’de 34 şirket ile birlik olarak çalışmalarına başladığı mobil işletim sistemi projesidir. Şu çalışmalarına başladığı mobil işletim sistemi projesidir. Şu an 65 şirket bu birliktedir.an 65 şirket bu birliktedir.
Bu birliğin adı Bu birliğin adı Open Handset AllianceOpen Handset Alliance’dır ve web sitesi : ’dır ve web sitesi : http://www.openhandsetalliance.com
Android sadece bir işletim sistemi değildir.Android sadece bir işletim sistemi değildir.
Yazılım geliştirme platformu, SDK’sı, Eclipse Plugini, Yazılım geliştirme platformu, SDK’sı, Eclipse Plugini, API’si ve Android Market ile birlikte dev bir ekosistemdir.API’si ve Android Market ile birlikte dev bir ekosistemdir.
Open Handset AllianceOpen Handset Alliance
Android’in ÖzellikleriAndroid’in Özellikleri
Linux kerneliLinux kerneliUygulama çatısıUygulama çatısıDalvik Virtual Machine (Java)Dalvik Virtual Machine (Java)Webkit tabanlı dahili internet tarayıcısıWebkit tabanlı dahili internet tarayıcısıSQL Lite veritabanıSQL Lite veritabanıVideo-Ses desteği Video-Ses desteği (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF)GSM telefon desteğiGSM telefon desteği3B ve 2B gelişmiş grafikler3B ve 2B gelişmiş grafiklerBluetooth, EDGE, 3G, Bluetooth, EDGE, 3G, veve WiFi WiFi (donanıma bağımlı)KKamera, GPS, amera, GPS, pusula ve akselerometre (ivmeölçer) pusula ve akselerometre (ivmeölçer) (donanıma bağımlı)Zengin uygulama geliştirme ortamı Zengin uygulama geliştirme ortamı (emülatör, Eclipse plugin)Android MarketAndroid MarketMultitaskingMultitasking
Android’in ÖzellikleriAndroid’in Özellikleri
System C library - System C library - a BSD-derived implementation of the standard C a BSD-derived implementation of the standard C system library (libc), tuned for embedded Linux-based devicessystem library (libc), tuned for embedded Linux-based devicesMedia Libraries - Media Libraries - based on PacketVideo's OpenCORE; the libraries based on PacketVideo's OpenCORE; the libraries support playback and recording of many popular audio and video support playback and recording of many popular audio and video formats, as well as static image files, including MPEG4, H.264, MP3, AAC, formats, as well as static image files, including MPEG4, H.264, MP3, AAC, AMR, JPG, and PNGAMR, JPG, and PNGSurface Manager - Surface Manager - manages access to the display subsystem and manages access to the display subsystem and seamlessly composites 2D and 3D graphic layers from multiple seamlessly composites 2D and 3D graphic layers from multiple applicationsapplicationsLibWebCore -LibWebCore - a modern web browser engine which powers both the a modern web browser engine which powers both the Android browser and an embeddable web viewAndroid browser and an embeddable web viewSGL - SGL - the underlying 2D graphics enginethe underlying 2D graphics engine3D libraries - 3D libraries - an implementation based on OpenGL ES 1.0 APIs; the an implementation based on OpenGL ES 1.0 APIs; the libraries use either hardware 3D acceleration (where available) or the libraries use either hardware 3D acceleration (where available) or the included, highly optimized 3D software rasterizerincluded, highly optimized 3D software rasterizerFreeType - FreeType - bitmap and vector font renderingbitmap and vector font renderingSQLite - SQLite - a powerful and lightweight relational database engine available a powerful and lightweight relational database engine available to all applicationsto all applications
Android MimarisiAndroid Mimarisi
VersiyonlarVersiyonlar
VersiyonlarVersiyonlar
Versiyon 1.1 ilk sürüm olarak söyleyebiliriz.Versiyon 1.1 ilk sürüm olarak söyleyebiliriz.
Versiyon 1.5 CupcakeVersiyon 1.5 Cupcake
Versiyon 1.6 DonutVersiyon 1.6 Donut
Versiyon 2.0 – 2.1 EclairVersiyon 2.0 – 2.1 Eclair
Versiyon 2.2 FroyoVersiyon 2.2 Froyo
Versiyon 2.3 GingerbreadVersiyon 2.3 Gingerbread
Versiyon 3.0 HoneycombVersiyon 3.0 Honeycomb
VersiyonlarVersiyonlar
VersiyonlarVersiyonlar
Android 1.1Android 1.1 Android 1.5 CupcakeAndroid 1.5 Cupcake
VersiyonlarVersiyonlar
Android 1.6 DonutAndroid 1.6 DonutAndroid 2.0 ve 2.1Android 2.0 ve 2.1
EclairEclair
VersiyonlarVersiyonlar
Android 2.2 FroyoAndroid 2.2 FroyoAndroid 2.3 GingerbreadAndroid 2.3 Gingerbread
VersiyonlarVersiyonlar
Android 3.0 HoneycombAndroid 3.0 Honeycomb
Enteresan UygulamalarEnteresan Uygulamalar
Enteresan UygulamalarEnteresan Uygulamalar
Android’in ve donanımın desteklediği özelliklere göre Android’in ve donanımın desteklediği özelliklere göre pusula, akseloremetre, GPS gibi özellikleri kullanan pusula, akseloremetre, GPS gibi özellikleri kullanan uygulamalar yaygınlaşmaktadır.uygulamalar yaygınlaşmaktadır.
Özellikle “Layar” Augmented Reality konseptiyle bakılan Özellikle “Layar” Augmented Reality konseptiyle bakılan yer hakkında görsel bilgiler vermektedir.yer hakkında görsel bilgiler vermektedir.
Bunun yanında pusulalar, Panoramio gibi konum bilgisine Bunun yanında pusulalar, Panoramio gibi konum bilgisine dayalı fotoğrafçılık uygulamaları, Google Maps API dayalı fotoğrafçılık uygulamaları, Google Maps API kullanan uygulamalar, Jedi ışın kılıcı, Zippo çakmak, her kullanan uygulamalar, Jedi ışın kılıcı, Zippo çakmak, her türden harekete duyarlı oyunlar vs. Android üzerinde türden harekete duyarlı oyunlar vs. Android üzerinde çalışmakta ve geliştirilmektedir. çalışmakta ve geliştirilmektedir.
Enteresan UygulamalarEnteresan Uygulamalar
LayarLayar
Android AraçlarıAndroid Araçları
Android Üzerinde Adobe Flex Android Üzerinde Adobe Flex ileile
Yazılım GeliştirmeYazılım Geliştirme
Adobe Flash Platformu, mobil cihazlarda iki şekilde Adobe Flash Platformu, mobil cihazlarda iki şekilde çalışabiliyor.çalışabiliyor.
1)1) Web sitelerindeki Flash uygulamalarını çalıştırarak, Web sitelerindeki Flash uygulamalarını çalıştırarak,
2)2) Adobe AIR platformu desteği ile mobil cihaza yüklenerek Adobe AIR platformu desteği ile mobil cihaza yüklenerek
Android için konuşacak olursak daha net olarak şöyle Android için konuşacak olursak daha net olarak şöyle anlatabiliriz:anlatabiliriz:
Android üzerinde ve AIR, Flash ve Flex Android üzerinde ve AIR, Flash ve Flex hakkında genel bilgilerhakkında genel bilgiler
1) 1) Androidli cihazınızdan bir web sitesine Androidli cihazınızdan bir web sitesine bağlandığınızda Flash animasyonları varsa bu bağlandığınızda Flash animasyonları varsa bu animasyonları görebilir, çalıştırabilirsiniz. Bu animasyonları görebilir, çalıştırabilirsiniz. Bu Flash animasyonların çalışması kişisel Flash animasyonların çalışması kişisel bilgisayarınızdaki ile aynıdır. Mesela Youtube bilgisayarınızdaki ile aynıdır. Mesela Youtube videolarını aynen bilgisayarınızdaki gibi videolarını aynen bilgisayarınızdaki gibi oynatabilir, Flash oyunlarını bilgisayarınızdaki oynatabilir, Flash oyunlarını bilgisayarınızdaki çalıştırabilirsiniz.çalıştırabilirsiniz.Yalnız bu noktada bazı kısıtlamalar var. Şöyle Yalnız bu noktada bazı kısıtlamalar var. Şöyle ki : ki :
* Mobil cihazınızın işlemcisi 1 GHz ve üzeri * Mobil cihazınızın işlemcisi 1 GHz ve üzeri olmalı,olmalı, * İşletim sisteminiz Android 2.2 ve üzeri * İşletim sisteminiz Android 2.2 ve üzeri olmalıolmalı * Cihazınızda Adobe Flash Player 10 ve * Cihazınızda Adobe Flash Player 10 ve üzeri yüklü olmalı. Android için Flash Player üzeri yüklü olmalı. Android için Flash Player 10 sürümünü Android Market'ten ya da 10 sürümünü Android Market'ten ya da http://gomobil.in/android/flash.apk adresinden http://gomobil.in/android/flash.apk adresinden indirebilirsiniz.indirebilirsiniz.
Android üzerinde ve AIR, Flash ve Flex Android üzerinde ve AIR, Flash ve Flex hakkında genel bilgilerhakkında genel bilgiler
2)2) Androidli cihazınıza Adobe Flash veya Androidli cihazınıza Adobe Flash veya Flex ile oluşturuşturulmuş apk uzantılı Flex ile oluşturuşturulmuş apk uzantılı uygulamalar yükleyebilir ve uygulamalar yükleyebilir ve çalıştırabilirsiniz. Ancak bu noktada da çalıştırabilirsiniz. Ancak bu noktada da yukarıdaki kısıtlamalar geçerli. Yani;yukarıdaki kısıtlamalar geçerli. Yani;
* Mobil cihazınızın işlemcisi 1 GHz ve * Mobil cihazınızın işlemcisi 1 GHz ve üzeri olmalı,üzeri olmalı, * İşletim sisteminiz Android 2.2 ve üzeri * İşletim sisteminiz Android 2.2 ve üzeri olmalıolmalı * Cihazınızda Adobe AIR Runtime 2.5 ve * Cihazınızda Adobe AIR Runtime 2.5 ve üzeri yüklü olmalı.Android için AIR 2.5 üzeri yüklü olmalı.Android için AIR 2.5 sürümünü Android Market'ten ya da sürümünü Android Market'ten ya da http://gomobil.in/android/air.apk http://gomobil.in/android/air.apk adresinden indirebilirsiniz.adresinden indirebilirsiniz.
Android üzerinde ve AIR, Flash ve Flex Android üzerinde ve AIR, Flash ve Flex hakkında genel bilgilerhakkında genel bilgiler
Yazılım geliştiriciler de her iki şekilde çalışan uygulamalarını Android için Yazılım geliştiriciler de her iki şekilde çalışan uygulamalarını Android için hazırlayabilirler. Adobe Flash ile yazılımış uygulamaların Android versiyonu hazırlayabilirler. Adobe Flash ile yazılımış uygulamaların Android versiyonu için fazladan bir çalışma yapmaya gerek yok. Ancak mobil AIR platformunda için fazladan bir çalışma yapmaya gerek yok. Ancak mobil AIR platformunda yazılım geliştirmek için ilave çalışma yapmaya gerek duyuluyor.yazılım geliştirmek için ilave çalışma yapmaya gerek duyuluyor.
Adobe şirketi, Flash ve AIR uygulamaları geliştirmek için Flash ve Flex adında Adobe şirketi, Flash ve AIR uygulamaları geliştirmek için Flash ve Flex adında iki SDK (Software Development Kit - Yazılım Geliştirme Kiti) sunuyor. Flex iki SDK (Software Development Kit - Yazılım Geliştirme Kiti) sunuyor. Flex SDK ile Flash ve AIR uygulamaları yazabiliyoruz. SDK ile Flash ve AIR uygulamaları yazabiliyoruz.
Bu SDK'ları kullanarak yazılım geliştirmek için bir de IDE (Integrated Bu SDK'ları kullanarak yazılım geliştirmek için bir de IDE (Integrated Development Environment - Tümleşik Yazılım Geliştirme Ortamı) 'na ihtiyaç Development Environment - Tümleşik Yazılım Geliştirme Ortamı) 'na ihtiyaç bulunuyor. Bu IDE'nin adı ise çok ilginç gelecek ama Flash Builder. Önceki bulunuyor. Bu IDE'nin adı ise çok ilginç gelecek ama Flash Builder. Önceki adı Flex Builder olan ve olayı gayet net şekilde açıklayan bu IDE'nin neden adı Flex Builder olan ve olayı gayet net şekilde açıklayan bu IDE'nin neden Flash Builder olarak değiştirildiğini merak etmekteyiz.Flash Builder olarak değiştirildiğini merak etmekteyiz.
Android üzerinde ve AIR, Flash ve Flex Android üzerinde ve AIR, Flash ve Flex hakkında genel bilgilerhakkında genel bilgiler
Karışıklığı önlemek için şöyle bir açıklama yapabiliriz:Karışıklığı önlemek için şöyle bir açıklama yapabiliriz:
Flash Professional :Flash Professional : Daha çok tasarım ve animasyon sanatçıları ve oyun Daha çok tasarım ve animasyon sanatçıları ve oyun yazılımcıları tarafından kullanılır, içerisinde yazılım geliştirmede kolaylık yazılımcıları tarafından kullanılır, içerisinde yazılım geliştirmede kolaylık sağlayan form elemanları gibi hazır bileşenler yoktur. Projeler fla uzantılıdır. sağlayan form elemanları gibi hazır bileşenler yoktur. Projeler fla uzantılıdır. IDE'si klasik Flash IDE'sinin geliştirilmiş şeklidir.IDE'si klasik Flash IDE'sinin geliştirilmiş şeklidir.
Flash Builder :Flash Builder : Daha çok yazılım geliştiriciler tarafından kullanılır, timeline, Daha çok yazılım geliştiriciler tarafından kullanılır, timeline, toolbox gibi tasarım ve animasyon araçları bulunmaz, form elemanları, veri toolbox gibi tasarım ve animasyon araçları bulunmaz, form elemanları, veri listeleme arayüzleri çoktur, eski adı Flex Builder'dır ve Flex SDK ile listeleme arayüzleri çoktur, eski adı Flex Builder'dır ve Flex SDK ile çalışılabilir. IDE Eclipse üzerinde pluginlerle geliştirilmiştir. mxml, as gibi çok çalışılabilir. IDE Eclipse üzerinde pluginlerle geliştirilmiştir. mxml, as gibi çok sayıda dosya formatı bulunur. Proje dosyaları fxp olarak export edilebilir.sayıda dosya formatı bulunur. Proje dosyaları fxp olarak export edilebilir.
Mobil AIR uygulamaları için henüz tamamen bitmemiş beta aşamasında olan Mobil AIR uygulamaları için henüz tamamen bitmemiş beta aşamasında olan bir Flex SDK mevcut. Kod adı bir Flex SDK mevcut. Kod adı "Hero""Hero" olan bu SDK ve kod adı olan bu SDK ve kod adı "Burrito""Burrito" olan olan mobil yazılım geliştirme ortamı Flash Builder şu an indirilebilir durumda ve mobil yazılım geliştirme ortamı Flash Builder şu an indirilebilir durumda ve denemelerimizde sorunsuz şekilde çalıştığını gözlemledik.denemelerimizde sorunsuz şekilde çalıştığını gözlemledik.
Android üzerinde ve AIR, Flash ve Flex Android üzerinde ve AIR, Flash ve Flex hakkında genel bilgilerhakkında genel bilgiler
Flex "Hero" SDK Flex "Hero" SDK ve ve
Flash Builder "Burrito" IDE Flash Builder "Burrito" IDE kurulum ve kullanımkurulum ve kullanım
Flex SDK ve Flash Builder IDEFlex SDK ve Flash Builder IDE
Flex SDK ve Flash Builder IDEFlex SDK ve Flash Builder IDE
Flex ve AIR uygulamaları geliştirmek için kullanılan Flash Builder IDE'si Mobil Flex ve AIR uygulamaları geliştirmek için kullanılan Flash Builder IDE'si Mobil yeteneklerle donatılarak "Burrito" kod adı ile duyuruldu. Bu IDE'nin Flash yeteneklerle donatılarak "Burrito" kod adı ile duyuruldu. Bu IDE'nin Flash Builder 4.1'den en büyük farkı mobil uygulamalara destek vermesi.Builder 4.1'den en büyük farkı mobil uygulamalara destek vermesi. Yeni Yeni versionun versiyon numarası 4.5 olarak duyurulacak.versionun versiyon numarası 4.5 olarak duyurulacak.
Flash Buider Burrito içerisinde şu yetenekler var:Flash Buider Burrito içerisinde şu yetenekler var:
Mobil uygulamalar için gereken tasarım araçları,Mobil uygulamalar için gereken tasarım araçları,Mobil test ortamı,Mobil test ortamı,Yazılan kodun önizlemesine imkan veren tasarım görünümü,Yazılan kodun önizlemesine imkan veren tasarım görünümü,Uygulamanın Android cihaz ve emülatörlere yüklenmesini ve cihaz üzerinde Uygulamanın Android cihaz ve emülatörlere yüklenmesini ve cihaz üzerinde test edilmesini sağlayan yapı,test edilmesini sağlayan yapı,Mobil cihazlardan veri bağlantılarını sağlayan araçlar.Mobil cihazlardan veri bağlantılarını sağlayan araçlar.
Flex SDK ve Flash Builder IDEFlex SDK ve Flash Builder IDE
Flash Builder Burrito'yu açtığımızda şöyle bir ekranla karşılaşıyoruz:Flash Builder Burrito'yu açtığımızda şöyle bir ekranla karşılaşıyoruz:
Flex SDK ve Flash Builder IDEFlex SDK ve Flash Builder IDE
Flash Builder ile mobil projeye başlamak için File -> New -> Flex Mobile Flash Builder ile mobil projeye başlamak için File -> New -> Flex Mobile Project menüsünü izleyebProject menüsünü izleyebiilirsiniz.lirsiniz.
Flex SDK ve Flash Builder IDEFlex SDK ve Flash Builder IDE
Bu menüyü takip edince birkaç adımda Mobil proje oluşturmamızı sağlayan Bu menüyü takip edince birkaç adımda Mobil proje oluşturmamızı sağlayan ekranlar geliyor.ekranlar geliyor.
Flex SDK ve Flash Builder IDEFlex SDK ve Flash Builder IDE
İlk ekranda İlk ekranda projemize isim projemize isim veriyoruz.veriyoruz.
Flex SDK ve Flash Builder IDEFlex SDK ve Flash Builder IDE
Next butonuna basıp diğer Next butonuna basıp diğer ekrana geçiyoruz. Bu ekrana geçiyoruz. Bu ekranda Full Screen ekranda Full Screen seçeneğini seçersek seçeneğini seçersek uygulamamız tam ekran uygulamamız tam ekran çalışacak ve Android çalışacak ve Android durum çubuğunu durum çubuğunu kapatacak.kapatacak.
Flex SDK ve Flash Builder IDEFlex SDK ve Flash Builder IDE
Yeni mobil proje Yeni mobil proje yaratırken çıkan 3. yaratırken çıkan 3. ekrandan sunucu iletişimi ekrandan sunucu iletişimi için hangi teknolojiyi için hangi teknolojiyi kullanacağımız soruluyor. kullanacağımız soruluyor. Bu ekrandan anlaşıldığı Bu ekrandan anlaşıldığı gibi mobil uygulamalar gibi mobil uygulamalar için de AMF ile veri için de AMF ile veri transferi mümkün. transferi mümkün. Application Server Type Application Server Type kısmını None/Other diye kısmını None/Other diye bırakıyoruz ve Next'e bırakıyoruz ve Next'e tıklıyoruz.tıklıyoruz.
Flex SDK ve Flash Builder IDEFlex SDK ve Flash Builder IDE
Dördüncü ve son ekranda Dördüncü ve son ekranda bizden istenen soruları olduğu bizden istenen soruları olduğu gibi bırakabiliriz. Bu ekrandan gibi bırakabiliriz. Bu ekrandan yapılacak ayarlamaları projeyi yapılacak ayarlamaları projeyi oluşturduktan sonra da oluşturduktan sonra da değiştirebiliriz. Finish diyerek değiştirebiliriz. Finish diyerek projemizin oluşturulması projemizin oluşturulması aşamalarını bitirebiliriz.aşamalarını bitirebiliriz.
Flex SDK ve Flash Builder IDEFlex SDK ve Flash Builder IDE
Ta ta ! Ve projemizi yarattık.Ta ta ! Ve projemizi yarattık.
Uygulamayı simülatörde çalıştırmakUygulamayı simülatörde çalıştırmak
Uygulamayı simülatörde çalıştırmakUygulamayı simülatörde çalıştırmak
Uygulamayı simülatörde çalıştırmakUygulamayı simülatörde çalıştırmak
Uygulamayı simülatörde çalıştırmakUygulamayı simülatörde çalıştırmak
Uygulamayı Android cihazı üzerinde çalıştırmakUygulamayı Android cihazı üzerinde çalıştırmak
Uygulamayı Android cihazı üzerinde çalıştırmakUygulamayı Android cihazı üzerinde çalıştırmak
Uygulamayı Android cihazı üzerinde çalıştırmakUygulamayı Android cihazı üzerinde çalıştırmak
Tour de Mobile FlexTour de Mobile Flex
Tour de Mobile FlexTour de Mobile Flex
TeşekkürlerTeşekkürler