Türkiye Online Medya Araştırması
Profili Göster

Flash CS3 ve AIR (Apollo) Eklentisi ile Masaüstü Programlama

Engin Yöyen Tarih: 1/12/2007 Yorum: 0 adet

Okunma : 2096 Tutanlar: Bu yazıyı 1 kişi tuttu.

Bu makalede AIR eklentisini Flash içerisinde nasıl kullanabileceğimizi anlatacağım. Ama daha önce kısaca AIR değinmek istiyorum. AIR (Adobe Integrated Runtime) Adobe'nin geliştirdiği bir platform. Bu platform da web ortamı için geliştirilmiş birçok dili kullanabilir ve web tabanlı yapılmış projeleri masaüstü projeler haline dönüştürebilirsiniz.

Bundan birkaç ay öncesine kadar bunu Flash ile yapmak mümkün değildi, Flex kullanarak bu işlemi yapabilirdiniz, ama haliyle öncelikle Flex öğrenmeniz gerekirdi.

Şu anda şu adresten

http://labs.adobe.com/wiki/...

AIR Eklentiyi indirip kurarak bu şansa sahipsiniz. Tabii unutmamak gerekir AIR Player'ında bilgisayarınızda yüklü olması gerekir.

AIR Player ise aşağıdaki adresten indirebilirsiniz

http://labs.adobe.com/wiki/...

Öncelikle AIR player ve Flash Cs3 için AIR eklentisini sorunsuz bir şekilde indirip kurduğunuzu ve tabii ki Flash'ı kapatıp açtığınızı varsayıyorum.

Evet.Flash'ı tekrar açtığınızda karşınıza çıkan "Hoşgeldiniz Ekranı (Welcome Screen)"ndan üçüncü sırada "Flash File(Adobe AIR) seçerek başlayalım.Eğer karşınıza hoş geldin ekranı çıkmadıysa yeni bir AS3 dokümanı oluşturup "Settings" bölümünden "Flash Player" versiyonunu Adobe Air 1,0 yapabilirisiniz.

Şu andan itibaren AS3 te yapacağınız herhangi bir uygulamayı masaüstü programı gibi çalıştırabilirsiniz.

Deneme yapmak için ufak bir uygulama hazırlayalım.Uygulamamızda bir daire ekran da çember etrafında dönecek.Altındaki "Slider" dan ise frame rate i değiştirebileceğiz.Buradaki amaç AS3 te projenizi bitirdikten sonra frame hızını nasıl değiştiğini görmek.Öncelikle aşağıdaki kodu kopyalayıp ilk frame yapıştırın.Daha sonra Components penceresinden User Interface bölümünün altından "Slider" ve "Label" kütüphanenize kopyalayın yada componentlerini sahnenin üzerine sürükleyip bırakın ve daha sonra bunları sahneden silin. Sahneden sildiğiniz halde kütüphanenizde otomatik olarak yer alacaktır.

//////////////////////////////////////////////////////////////////////////
//import edilen sınıfların kullandığımız özelliklere ait sınıflar.
import fl.controls.Slider;
import fl.events.SliderEvent;
import fl.controls.Label;

stage.frameRate = 30;
/*---------< LABEL >-----------*/
//Yeni bir label oluşturuyoruz
var frameLabel:Label = new Label();
//Label ait genişliği ayarlıyoruz
frameLabel.width =200;
//X pozisyonunu belirliyoruz
frameLabel.x = 75;
//Y pozisyonunu belirliyoruz
frameLabel.y =375;
//Label Şu anki frame hızını yazdırıyoruz
frameLabel.text= "Şu anki frame hızı 30"
;
//AS 2 de objeleri sahnede görüntülemek için yada öndemi arakdamı duracagını ayarlamak için
//depth özelligini kullanılırdır.ör(this.getNextHighestDepth).AS3 te ise ekran da bir objeyi
//görüntülemek için addChild özelliğini kullanıyoruz.
addChild(frameLabel);
/*---------< LABEL / >-----------*/


/*---------< SLIDER >-----------*/
var frameSlider:Slider = new Slider();
frameSlider.width =400;
frameSlider.x = 75;
frameSlider.y =355;
frameSlider.maximum = 500;
addChild(frameSlider);
/*---------< SLIDER / >-----------*/


//Slider da yapılan herhangi bir değişikliği dinlemesi için
//eventListener Metodunu kullanıyoruz
frameSlider.addEventListener(SliderEvent.CHANGE, changeHandler);
//Slider da yapılan değişiklik algılandıgında çalışacak olan fonksiyon
function changeHandler(event:SliderEvent):void {
//hız değişkenini numara olarak tanımlayıp
//slider kaydırıldıgında
var hiz:Number = event.value;
stage.frameRate = hiz;
var degiskeninYeniDegeri:String = new String(hiz);
frameLabel.text= "Şu anki frame hızı "+degiskeninYeniDegeri;
}

//Derece tanımlanıyor daha sonra derece her seferinde 5 eklenecek
//Bir nevi kat ettigi yolun üzerine 5 ekleyerek devam edecek
var derece:Number = 0;
// çemberin radyanı
var radyan:Number = 120;
//cemberin etrafında dönecek olan uydunun radyanı
var uyduRadyani:Number =10;
//Bir sprite oluşturup buna cember adını verıyoruz
var cember:Sprite = new Sprite();
//Cember bulunacagı yerı belirliyoruz.
//Sahnenin ortası
cember.x = stage.stageWidth / 2;
cember.y = stage.stageHeight / 2;
addChild(cember);
//Bir shape oluşturup adına grafik diyoruz
var uydu:Shape = new Shape();
cember.addChild(uydu);
//Enter frame için olay dinleyicisi ekliyoruz
//Yani bu frame calısıtrıldıgında ıtıbaren fonksıyonumuz devreye girecek
addEventListener(Event.ENTER_FRAME, herFrameDevamEt);

function herFrameDevamEt(event:Event):void {
//dereceye 5 ekliyoruz Bu sekilde uydunun her seferinde
// ne kadar ilerliyeceğini hesaplıyoruz.
derece +=5;
//yeni bir değişken tanımlıyoruz ve değerini fonksiyona eşit tutuyoruz.
var radyanlar:Number = radyaniHesapla(derece);
//uydunun x ve y koorninatı hesaplanıyor
var posX:Number = Math.sin(radyanlar) * radyan;
var posY:Number = Math.cos(radyanlar) * radyan;
//uydu olarak cızılen bır oncekı gorontu temizleniyor
//Aslında burda yapılan her seferinde eski çemberi silerek yeni bir cember yaratıp
//eski bulundugu noktadan 5 derece uzaklastırmak.
//Böylece daireyi dönmüş olacak
uydu.graphics.clear();
//uydunun rengini veriyoruz
uydu.graphics.beginFill(0x000000);
//uydununn pozisyonunu ve radyanını verıyoruz
uydu.graphics.drawCircle(posX, posY, uyduRadyani);
}

function radyaniHesapla(dereceler:Number):Number {
return dereceler * Math.PI / 180;
}

///////////////////////////////////////////////////////////////////////

Daha sonra üst taraftaki Command butonuna tıklarsanız Command paneline AIR- başlıklı iki yeni butonun eklendiğini göreceksiniz. Bunların ilki, AIR-Application and Package Settings bu butonda export etmek istediğiniz AIR dosyasının ayarlarını yapıyorsunuz. İkinci de ise "AIR-Package AIR File" eğer herhangi bir ayar yapmıyorsanız ikinciye basıp hemen export edebilirsiniz.

Sırada ise çalışmanın ayarları var. Command butonuna basıp oradan da "AIR-Application and Package Settings" butonuna basınız.

En üstten alta doğru gidersek;

File Name - Çalışmanıza vermek istediğiniz ad- Bu ad AIR dosyanızın adı ve yüklemeden sonra masa üzerinde dosyanın alacağı ad, tabii her masaüstü programı gibi buda değişebilir.

Name - Buraya yazacağınız isim bir nevi tanım, yani buradaki dosyanızın gerçek ismi diyebiliriz

ID - Dosya verdiğiniz tekil ID. Bu ID yardımıyla daha önce buna benzer bir dosya olup olmadığını kontrol ediyor. İstediğiniz takdirde bu default olarak yaratılan ID yi değiştirebilirisiniz. Dikkat etmeniz gerek nokta ise sadece latin karakterler, sayı, nokta ve kısa çizgi kullanabilirsiniz.

Version - Dosyanın versiyonu. Bu tamamen size kalmış. Ama 1.0.0.0 dan dan başlamak güzel bir şey olsa gerek.

Description - Burası program hakkındaki açıklamalar için.

Copyrigth -Telif hakkı bilgisi.

Window Style - Burada programınızın hangi pencerede açılmak istediğini belirliyorsunuz.

3 Seçeneğiniz var

1-System - Normal Windows penceresi

2- Custom Chromo (opaque)- Burada programınız bir pencere içinde değil de kendi boyutlarıyla, penceresiz geliyor.

3- Custom Chromo (Transparent)-Bunu seveceğinizden eminim. Bunda ise flash ekranında yaptığınız her şeyi arka plan olmadan görebiliyorsunuz. Yani zemin yok. Çok büyük avantajlar sağlayacağından eminim. Mesela çalışmanız Fanus resmi olan bir png eklediniz ve bu png dosyası ana sahneye koyup bütün işlemleri bu fanusun üzerinde yapıyorsunuz.Klasik olarak bu çalışmanın etrafını doldurmanız gerekiyor eğer exe olarak kullanacaksanız. Ama isterseniz çalışmayı yaptıktan sonra 3 seçeneği seçerek masaüstünde çalışmanızı penceresiz yapabilirsiniz.

(Not: Bu çalışma için 3. seçenegin seçilmesi gerekiyor)

Icon- çalışmanız için seçebileceğiniz ikonlar.

Use custom application descriptor file -Yaptığınız ayarlar bir xml dosyasına kaydediliyor.Eğer daha önceden yaptığınız ayarları kullanmak istiyorsanız bu şıkkı işaretleyip xml adresini belirtebilirisiniz. Bu sayede ayarları tekrar tekrar yapmış zorunda kalmazsınız.

Destination folder - Çalışmanızı kaydetmek istediğiniz hedef dosyayı buradan belirtebilirisiniz.

Included Files -Burada çalışmaya dahil edilen dosyaların listesi yer almakta. Eğer isterseniz herhangi bir dosya ekleyip çıkarabilirsiniz.

Şu anda tek yapmanız gereken "Package" butonuna basarak çalışmanızı export etmek.

Örnek Uygulama dosyalarını buradan indirebilirsiniz:.

Umarım yardımcı olabilmişimdir. Kendinize iyi bakın...

Kolay Gelsin

aç-kapa İçeriğin rss beslemesi kullanımda değil Yorumlar

İçeriğe kayıtlı yorum bulunmuyor. İlk yorumu siz buradan ekleyebilirsiniz.


yeni üyelik | şifremi unuttum

aç-kapa Toplantı Özgür Yazılım ve Linux Günleri '10

Özgür Yazılım ve Linux Günleri '10

İstanbul Bilgi Üniversitesi Bilgisayar Bilimleri Bölümü ve Linux Kullanıcıları Derneği'nin 9 yıldır düzenlemekte oldukları etkinlikler bu yıl `Özgür Y...
Kategori: Toplantı

aç-kapa Yarışma 3. Uluslararası Ekslibris Yarışması: İstanbul 2010

3. Uluslararası Ekslibris Yarışması: İstanbul 2010

İstanbul Ekslibris Dernegi, Feyziye Mektepleri Vakfı ve Işık Üniversitesi, kitaplar için mülkiyet işareti olarak kabul edilen ve üzerinde estetik dege...
Kategori: Yarışma

aç-kapa Konferans Yeni Medya ve Etkileşim Konferansı 2010 - Marmara Üniversitesi

Yeni Medya ve Etkileşim Konferansı 2010 - Marmara Üniversitesi

Generally speaking, the term "New" brought about debates. We try to open up and elucidate the term "New" along with "Interact...
Kategori: Konferans

aç-kapa Konferans 3. Uluslararası Gelecek İçin Öğrenme Alanında Yenilikler Konferansı 2010: e-Öğrenme

3. Uluslararası Gelecek İçin Öğrenme Alanında Yenilikler Konferansı 2010: e-Öğrenme

Konferans ile ilgili ayrıntılı bilgiye aşağıdaki bağlantıdan ulaşabilirsiniz: http://www.futurelearning.org.tr/katilim_cagrisitr.pdf ...
Kategori: Konferans

aç-kapa Toplantı IV. ANKARA TASARIM GÜNLERİ 2010

IV. ANKARA TASARIM GÜNLERİ 2010

IV. Ankara Tasarım Günleri, seminerleri, sunumları, etkinlik tarihleri boyunca gezilebilecek tasarım sergileri, video art gösterimleri, çeşitli worksh...
Kategori: Toplantı

üyeler Son Kahramanlar...

stats Kimler Burada? web stats

Son 1 dakika içinde MMIstanbul' da 58 (50 kayıtlı, 8 ziyaretçi) kullanıcı varmış. Login durumda olanlar aşağıda:

Blog Bölümü Blogevi.com'a Taşınıyor

Selam arkadaşlar MMIstanbul'da , tasarımcı ve programcıların blog yazılarını "feedleyerek" MMIstanbul okurlarını MMIstanbul dışın ...

7.500'üncü üyemiz Cem Koç!

Neler Yapılabilir?

500 Hatası Hakkında!

Reklam, MMIstanbul ve Yeni Projeler (Durumumuz Bu Tarzında)

coldfusion mysql ubuntu
 
sponsor adobe istanbul