MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME Java, Sun ve diğer bilgisayar donanım üreticileri tarafından 1990’larda geliştirilen bir programlama dilidir. Diğer dillerden farklı olarak,uzaktan yükleme mantığına göre tasarlanmış. Daha hızlı yüklemeler yapılabilmesi için, applet isminde ufak programlardan oluşuyor. Böylece birkaç applet birleşerek büyük bir yazılımı meydana getiriyor. Java’nın cep telefonları için geliştirilmiş türü J2ME diye anılıyor. Java 2 Micro Edition’ ın kısaltması olan bu yazılım dili, cep telefonlarının yanı sıra avuç içi bilgisayarlar gibi mobil cihazlara entegre edilerek uygulamaları tanıması sağlanıyor. 1.Haz.2009
JAVA Micro Edition
1
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME Javalı cep telefonlarının giderek yaygınlaşması yakında Türkiye dahil dünyadaki telefonların çoğunun Java destekli olacağı anlamına gelir. Bu yazılım şirketleri için büyük bir pazar demektir. Çünkü insanlar cep telefonlarına çeşitli programlar yüklemek ister. Program yükleme işlemleri şuan Wap üzerinden ve bilgisayarlardan veri gönderme sayesinde yani bluetooth, infra red ve data kabloları sayesinde olmaktadır. İşte Java burada devreye girmekte.
1.Haz.2009
JAVA Micro Edition
2
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME Cep Telefonlarında Ne Tür Programlar Yapabilirsiniz ? •Oyun
1.Haz.2009
•Chat-Online oyun •Sözlük,Ansiklopedi gibi bilgi sunan programlar •Browser-e-mail gibi internet programları •Hesap makinası,birim çevirme programı gibi yardımcı programlar JAVA Micro Edition •resim,ses,video gibi multimedia
3
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME Java Nasıl Çalışır ? Java uygulamaları amaçlarına göre HotSpot, JVM (Java Virtual Machine), KVM (Kilo Virtual Machine), Card VM gibi yorumlayıcılardan oluşur. Bunlardan JVM, en çok kullanılanıdır. ve işletim sisteminin en tepesinde bulunur. Bu sayede yazılmış olan Java uygulamaları değişik işletim sistemlerinde, herhangi bir değişiklik yapılmadan çalışabilir. Böylece Java programlama dilinin felsefesi olan "Bir kere yaz her yerde çalıştır" sözü gerçekleştirilmiştir.
1.Haz.2009
JAVA Micro Edition
4
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME Java Nasıl Çalışır ? Aşağıdaki şekillerde, Javanın kaynak kodundan, çalışmasına kadar olan evreleri gösterilmektedir.
Byte koduna çevrilen kaynak kod, JVM tarafından yorumlanır ve uygulama çalıştırılmış olur. Yazılan java kaynak kodlarımız ilk önce derlenir (compile) daha sonra ise çalıştırılır. Java kaynak kodu içerisinde belirttiğimiz her sınıf (class) için fiziksel olarak bir .class dosyası oluşturulur. 1.Haz.2009
JAVA Micro Edition
5
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME- Java 2, Micro Edition (J2ME - java 2 Mikro Sürüm) Akıllı kartlar, mobil cihazlar gibi küçük ve kısıtlı aletler için çıkarılmış sürümüdür. Java 2 Platform, Micro Edition (J2ME technology) Connected Device Configuration (CDC) Connected Limited Device Configuration (CLDC) C Virtual Machine (CVM) K Virtual Machine (KVM) PersonalJava Java Card JavaPhone API Java TV API Jini Network Technology Mobile Information Device Profile (MIDP) 1.Haz.2009
JAVA Micro Edition
6
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME Javanın Başarılı Olmasındaki Sebebler: 1. Nitelikli bir programlama dili olması: a. C/C++ da olduğu gibi hafıza problemlerinin olmaması b. Nesneye yönelik (Object - Oriented) olması c. C/C++/VB dillerinin aksine dinamik olması d. Güvenli olması e. Internet uygulamaları için elverişli olması. (Applet, JSP, Servlet, EJB, Corba, RMI) 2. Platform bağımsız olması : Bir kere yaz her yerde çalıştır
1.Haz.2009
JAVA Micro Edition
7
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME Peki java çok farklı cihazlarda (cep telofonları,PDA, ve diğer küçük cihazlar) nasıl oluyor da bu işi başarıyor. Bu çok farklı cihazlar için java J2ME (Java 2 Micro Edition) edition'u ortaya çıkarmış. J2ME standart edition'dan farklıdır. Standart edition için yaptığınız bir kod tabiki küçük cihazlarda çalışmaz. Bunun için J2ME edition'u kullanılmalıdır.
1.Haz.2009
JAVA Micro Edition
8
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME
1.Haz.2009
JAVA Micro Edition
9
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME J2ME (Java 2 Micro Edition) javanın küçük cihazlar için geliştirmiş olduğu bir sürümdür. Bu cihazlar cep telefonları, palm,tv kutu'ları gibi cihazlardır. Bu cihazlar PC'lere göre sınırlı kaynakları olan cihazlardır. Bu yüzden bu cihazlara yönelik değişik bir sürüm yaratılmıştır.
1.Haz.2009
JAVA Micro Edition
10
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME
1.Haz.2009
JAVA Micro Edition
11
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME Connected Device Configuration (CDC - Bağlı Aygıt Konfigürasyonu) CDC konfigürasyonu Java uygulamaları için en az 2MB hafızası olan ve 16/32 Bit işlemci ile çalışan aygıtlar için tanımlandı. CDC aygıtları genelde sabit güç kaynağına ve geniş bantlı internet bağlantısına sahipler. Örneğin: TV Set-Top Box'lar, görüntülü internet telefonları ve arabalarda kullanılan Telematik aygıtları. (Navigasyon,vs.)
1.Haz.2009
JAVA Micro Edition
12
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME Connected Device Configuration (CDC - Bağlı Aygıt Konfigürasyonu) J2SE sınıflarının bazı bölümlerini içeren CDC konfigürasyonu programları J2SE tabanında çalışabilirler. CLDC konfigürasyonunun javax.microedition.io paketini içeren CDC uygulamasının bir parçasıda Java Sanal Makinası'dır (JVM - Java Virtual Machine)
1.Haz.2009
JAVA Micro Edition
13
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME Connected Device Configuration (CDC - Bağlı Aygıt Konfigürasyonu) CDC konfigürasyonu alttaki profillerin tabanını oluşturur: • Foundation Profile - FP • Personal Basis Profile - PBP • Personal Profile - PP
1.Haz.2009
JAVA Micro Edition
14
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME Connected Limited Device Configuration (CLDC - Limitli Bağlı Aygıt Konfigürasyonu) CLDC konfigürasyonu 128kB ile 512kB arası hafızası olan ve 16/32 Bit CISC / RISC işlemci ile çalışan aygıtlar için tanımlandı. Genelde pille (akü) çalışan CLDC aygıtları internet bağlantısına sahipler (cep telefonları, avuçiçi bilgisayarlar ve çağrı cihazları).
1.Haz.2009
JAVA Micro Edition
15
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME Connected Limited Device Configuration (CLDC - Limitli Bağlı Aygıt Konfigürasyonu) CLDC konfigürasyonu alttaki temaları içeriyor: • • • • • •
Java Sanal Makina'sının tanımlaması (KVM) Elementer kütüphane (java.lang.*, java.util.*) I/O operasyonlarını destekleyen sınıflar Ağ komünikasyonu Uygulama çevresinin işletim sisteminden ayırımı Unicode desteği
1.Haz.2009
JAVA Micro Edition
16
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME Connected Limited Device Configuration (CLDC - Limitli Bağlı Aygıt Konfigürasyonu) CLDC 1.0 konfigürasyonu Java çalışma zamanına gereken birçok elementer sınıflar içeriyor. CLDC düşük kapasiteli aygıtları hedefliyor. Bu nedenle C programlama dilinde geliştirilmiş kısıtlı Java Sanal Makinası' nı (KVM) tanımlıyor.
1.Haz.2009
JAVA Micro Edition
17
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME Connected Limited Device Configuration (CLDC - Limitli Bağlı Aygıt Konfigürasyonu) KVM'nin kısıtlamaları : • • • • • • •
Kaygan virgül hesaplaması yok. java.lang.Object.finalize() metodu yok. Kısıtlı hata yönetimi. Java Native Interface (JNI) arayüzü yok. Thread Groups ve Deamon Threads yok. Reflection yok. Kullanıcı tanımlamalı Class Loader yok.
1.Haz.2009
JAVA Micro Edition
18
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME Connected Limited Device Configuration (CLDC - Limitli Bağlı Aygıt Konfigürasyonu) CLDC 1.1 versiyonu tanımlandı. İki konfigürasyon arasındaki önemli farklar: • Kaygan virgül hesaplaması destekleniyor (Float ve Double sınıfları). • Takvim, tarih ve zaman dilimi sınıfları J2SE'ye benziyor. • Asgari hafıza büyüklüğü 128kB'tan 160kB'a yükseltildi. • CLDC 1.0 hataları düzeltildi. 1.Haz.2009
JAVA Micro Edition
19
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME Connected Limited Device Configuration (CLDC - Limitli Bağlı Aygıt Konfigürasyonu) CLDC 1.1 için MIDP 2.0 profiliyle bağımlı yeni imkanlar sunan birçok ilave paketler tanımlandı: Mobile Media API - Ses ve görüntü kayıt etme ve oynatma arabirimi. Wireless Messaging API - Gelişmiş mesajlaşma arabirimi. Bluetooth API - Bluetooth komünikasyonu. Location API for J2ME - GSM aygıtlarının yerinin belirlenmesini sağlayan arabirim. 1.Haz.2009
JAVA Micro Edition
20
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME Mobile Information Device Profile (MIDP - Mobil Aygıt Bilgilendirme Profili) MIDP J2ME platformu için tanıtılan ilk profildir. Temmuz 2000 yılında CLDC 1.0 konfigürasyonunu temel alan MIDP 1.0 versiyonu ve 2002 yılının sonunda CLDC 1.1 konfigürasyonunu temel alan MIDP 2.0 versiyonu tanıtıldı. MIDP profili cep telefonları, avuçiçi bilgisayarları ve çağrı cihazları gibi küçük aygıtları hedefliyor. Bu cihazlar sahip oldukları düşük hafızaları (512kB'tan az) ve kablosuz internet bağlantılarının yanı sıra pille (akü) çalışıyorlar ve düşük işlemci hızına sahipler.
1.Haz.2009
JAVA Micro Edition
21
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME Mobile Information Device Profile (MIDP - Mobil Aygıt Bilgilendirme Profili) MIDP 1.0 profili alttaki imkanları sunuyor: •Grafik kullanıcı arayüzünün kurumu (GUI - Graphic User Interface). •Kullanıcının girdiği verileri işlemek. •Grafik dosyaların görüntülenmesi. •Zaman sayacının kullanımı. •Verileri veritabanından okumak/silmek ve verileri kayıt etmek. •HTTP bağlantılarını kurmak. 1.Haz.2009
JAVA Micro Edition
22
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME Mobile Information Device Profile (MIDP - Mobil Aygıt Bilgilendirme Profili) MIDP 2.0 profili daha geniş imkanlar sunuyor: •Resim işleme (RGB). •Gelişmiş çoklu ortam. •Gelişmiş kullanıcı arayüzü (GUI). •Oyun API (Application Programming Interface Uygulama Programlama Arayüzü). •SSL üzerinden güvenli HTTP bağlantıları. •Dijital imza. 1.Haz.2009
JAVA Micro Edition
23
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME PDA Optional Packages (PDAOP - Avuçiçi İlave Paketler)
•Personal Information Management (PIM) - Bu paket avuçiçi bilgisayarın hafızasında bulunan verilere ulaşılmasını sağlıyor, misal: adres defteri, ajanda, takvim, vs. •FileConnection (FC) - Bu paket hafıza kartı (SD/MMC/Flash, vs.) gibi değiştirilebilir yedekleme donanımlarında olan verilere ulaşmak için geliştirildi.
1.Haz.2009
JAVA Micro Edition
24
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME Cep Telefonlarının Desteklediği Kütüphaneler:
1.Haz.2009
JAVA Micro Edition
25
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME Cep Telefonlarının Desteklediği Kütüphaneler: java.lang,java.util,java.io paketleri standart java'daki tüm özellikleri içerir. javax.microedition.io paketi network paket'idir. Bir server bağlantı kurmak için gerekli class'ları içerir. javax.microedition.midlet paketinde tek bir class vardır: MIDlet. MIDlet cep telefonlarında çalışan program class'ıdır. Applet veya Application gibi düşünebilir.
1.Haz.2009
JAVA Micro Edition
26
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME Cep Telefonlarının Desteklediği Kütüphaneler: javax.microedition.lcdui paketi arayüz paketidir. javax.microedition.rms cep telefonunun hafızasına kayıt etme için kullanılan class'lar bulunur.
1.Haz.2009
JAVA Micro Edition
27
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME Midlet Geliştirme ve Kurulum Cep telefonları MIDP profile'ni desteklerler. Cep telefonunda çalışan bir program yapmanız için MIDlet class'ını extend etmelisiniz. Yaptığınız programın cep telefona kurulması için jar ve jad dosyalarının oluşturulması gerekmektedir. jar ve jad dosyalarını kullandığınız editorler sizin için oluşturmaktadırlar. jar dosyası class dosyalarının bulunduğu sıkıştırılmış dosyadır. jad dosyası ise midlet ve jar hakkında bilgi tutan bir dosyadır. 1.Haz.2009
JAVA Micro Edition
28
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME Midlet Geliştirme ve Kurulum Cep telefonundaki browser ile test.wml sayfasına bağlanılıp "Download Test Midlet" linki seçilirse kurulum işlemi başlar. Önce jad dosyası yüklenir. Daha sonra jar dosyası yüklenir ve kurulum gerçekleşir. Kullanıcının bir şey yapmasına gerek yoktur. jar ve jad dosyası kablo yoluyla da telefona kurulabilir. PC'de bulanan bir jad veya jar kablo ile telefona kurulabilir. Tüm java destekli telefonlar bunu desteklerler. 1.Haz.2009
JAVA Micro Edition
29
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME Midlet Geliştirme ve Kurulum Cep telefonunda çalışan programlara midlet denir. Midlet yaratmak için javax.microedition.midlet paketindeki MIDlet class'ını extend etmeniz gerekir. MIDlet class'ı abstract bir class'tır. Aşağıdaki üç method implement edilmelidir.
1.Haz.2009
JAVA Micro Edition
30
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME Midlet Geliştirme ve Kurulum Şimdi HelloWorld örneği yapalım.
1.Haz.2009
JAVA Micro Edition
31
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME Midlet Geliştirme ve Kurulum
1.Haz.2009
JAVA Micro Edition
32
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME Midlet Geliştirme ve Kurulum
1.Haz.2009
JAVA Micro Edition
33
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME- Proje Uygulamasında Kullanılan Programlar
1.Haz.2009
JAVA Micro Edition
34
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME- Proje Uygulamasında Kullanılan Programlar
1.Haz.2009
JAVA Micro Edition
35
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME- Proje Uygulamasında Kullanılan Programlar
1.Haz.2009
JAVA Micro Edition
36
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME- Proje Uygulamasında Kullanılan Programlar
1.Haz.2009
JAVA Micro Edition
37
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME- Proje Uygulamasında Kullanılan Programlar
1.Haz.2009
JAVA Micro Edition
38
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME- Proje Uygulamasında Kullanılan Programlar
1.Haz.2009
JAVA Micro Edition
39
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME- Proje Uygulamasında Kullanılan Programlar
1.Haz.2009
JAVA Micro Edition
40
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME- Proje Uygulamasında Kullanılan Programlar
1.Haz.2009
JAVA Micro Edition
41
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME- Proje Uygulamasında Kullanılan Programlar
1.Haz.2009
JAVA Micro Edition
42
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME- Proje Uygulamasında Kullanılan Programlar
1.Haz.2009
JAVA Micro Edition
43
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME- Proje Uygulamasında Kullanılan Programlar
1.Haz.2009
JAVA Micro Edition
44
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME- Proje Uygulamasında Kullanılan Programlar
1.Haz.2009
JAVA Micro Edition
45
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME- Proje Uygulamasında Kullanılan Programlar
1.Haz.2009
JAVA Micro Edition
46
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME- Proje Uygulamasında Kullanılan Programlar
1.Haz.2009
JAVA Micro Edition
47
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME- Proje Uygulamasında Kullanılan Programlar
1.Haz.2009
JAVA Micro Edition
48
MOBİL CİHAZLARIN TARİHÇESİ VE DONANIM J2ME- Proje Uygulamasında Kullanılan Programlar
1.Haz.2009
JAVA Micro Edition
49
NETBEANS 6.1 Netbeans 6.1 Bilgisayara jdk-6u3-windows-i586-p ve Netbeans 6.1 programları yüklendi.
1.Haz.2009
JAVA Micro Edition
50
NETBEANS 6.1 Netbeans 6.1 Netbeans 6.1 programını açarız. Aşağıdaki ekran görüntüsüyle karşılaşılır.
1.Haz.2009
JAVA Micro Edition
51
NETBEANS 6.1 Netbeans 6.1 - Mobile Uygulama Çoğu mobile uygulamalar Java Micro Edition (Java ME) platformunu kullanır, bu uygulamalar cep telefonları ve set-top boxeslar için geliştirilmiştir. Java ME, Java SE’nin bileşenlerini, sanal makinlerini ve API’lerinin alt birimlerini küçülterek kullanır. API’ler bireysel mobile ve gömülü aygıtlara hitap eder. NetBeans Java ME, Java ME platformunu iki yapılandırma ile destekler, CLDC ve CDC.
1.Haz.2009
JAVA Micro Edition
52
NETBEANS 6.1 Netbeans 6.1 - Mobile Uygulama Bağlı Sınırlı Aygıt Yapılandırması (Connected Limited Device Configuration - CLDC) CDC tabanlı aygıtlarından daha düşük bellek ve işlem gücü içeren aygıtlardır. Mobile Bilgi Aygıt Profili (The Mobile Information Device Profile -MIDP), CLDC’ye dayanır ve dünya çapında iki milyardan fazla MIDP aygıtları kullanımdadır.
1.Haz.2009
JAVA Micro Edition
53
NETBEANS 6.1 Netbeans 6.1 - Mobile Uygulama Bağlı Aygıt Yapılandırması (Connected Device Configuration - CDC) Gömülü sunucular ve aygıtlar gibi yüksek bellek, işlem gücü ve ağa bağlanabilirliliği ile aygıtlar içindir. Ek olarak, masaüstü, web, telefonlar, televizyon ve diğer aygıtlara karşı benzer kullanıcı deneyimlerini sağlamak amacıyla yeni JavaFX platformu için uygulamalar geliştirebilirsiniz.
1.Haz.2009
JAVA Micro Edition
54
NETBEANS 6.1 Netbeans 6.1 - Mobile Uygulama MIDP Uygulaması Oluşturmada Visual Mobile Desinger Kullanımı The NetBeans IDE’nin sağladığı sihirbaz, hızlı MIDP projesi oluşturmanızı kolaylaştırır. Proje oluştururken, uygulamanızı geliştirmek için visual mobile desinger (VMD) ya da Source Code Editor seçebilirsiniz. Visual mobile desinger kullanımı, uygulamanın akışını grafikle planlama becerisi verir ve kullanıcı arayüzü tasarlar. Tasarımcı otomatik olarak uygulama için kod oluşturur.
1.Haz.2009
JAVA Micro Edition
55
NETBEANS 6.1 Netbeans 6.1- MIDP/CLDC Uygulaması Oluşturma 1. File > New Project (Ctrl+Shift+N) seçilir. Alt kategorilerden Mobility seçilir.
1.Haz.2009
JAVA Micro Edition
56
NETBEANS 6.1 Netbeans 6.1- MIDP/CLDC Uygulaması Oluşturma 2. Proje kategorilerinden, MIDP Application seçilir ve Next tıklanır.
1.Haz.2009
JAVA Micro Edition
57
NETBEANS 6.1 Netbeans 6.1- MIDP/CLDC Uygulaması Oluşturma 3. Project Name alanına MyHello girilir. Varsayılan proje alanı kullanılır ya da sistemindeki farklı bir dizin seçilerek değiştirilir. Bu pratik çalışmada $PROJECTHOME gibi bir dizin seçeriz.
1.Haz.2009
JAVA Micro Edition
58
NETBEANS 6.1 Netbeans 6.1- MIDP/CLDC Uygulaması Oluşturma 3. Main Project işaretlenir ve MyHello MIDlet check box’lar oluşturulur (ikisi de varsayılan olarak işaretlenir). Next tıklanır. 4. Sun Java Wireless Toolkit 2.5.2 for CLDC as the Emulator Platform seçilir ve geriye kalanlar varsayılan olarak kullanılır. Next tıklanır.
1.Haz.2009
JAVA Micro Edition
59
NETBEANS 6.1 Netbeans 6.1- MIDP/CLDC Uygulaması Oluşturma 5. Finish tıklanır. IDE $PROJECTHOME/MyHello proje klasörünü oluşturur. Proje klasörü tüm kaynaklarınızı ve proje metaverilerini içerir, Ant script projesi gibi. Visual mobile desinger Flow Designer penceresinde uygulama gösterilir.
1.Haz.2009
JAVA Micro Edition
60
NETBEANS 6.1 Netbeans 6.1- MIDP/CLDC Uygulaması Oluşturma
1.Haz.2009
JAVA Micro Edition
61
NETBEANS 6.1 Netbeans 6.1- MIDP/CLDC Uygulaması Oluşturma
1.Haz.2009
JAVA Micro Edition
62
NETBEANS 6.1 Netbeans 6.1- MIDP/CLDC Uygulaması Oluşturma
1.Haz.2009
JAVA Micro Edition
63
NETBEANS 6.1 Netbeans 6.1- MIDP/CLDC Uygulaması Oluşturma
1.Haz.2009
JAVA Micro Edition
64
NETBEANS 6.1 Netbeans 6.1- Java Kaynak Kodu Yazma Şimdi, MIDlet kullanarak text yazalım. 1. Screen tıklanır. Screen Designer penceresi açılır ve Device Screen görünür, bu ekran uygulamanın içerisinde olan tek ekrandır. 2. Properties penceresinde Text alanına tıklanır ve birkaç yeni kelime yazılır. Bu örnekte “Make my day” yazdık.
1.Haz.2009
JAVA Micro Edition
65
NETBEANS 6.1 Netbeans 6.1- Java Kaynak Kodu Yazma 3. Ekranda görülen girdiğiniz kelimelerin Text alanının önizlemesidir.
1.Haz.2009
JAVA Micro Edition
66
NETBEANS 6.1 Netbeans 6.1- Proje Derleme ve Çalıştırma 1. Run menüsünden > Run Main Project (F6) seçilir. Output penceresinde proje derleme süresince beklenilir. Derleme tamamlanmadan önce HelloMIDlet.java dosyası oluşturulur. Device Emulator MIDlet dosyasının tamamlanmasının sonuçlarını göstermek üzere açılır. DefaultColorPhone varsayılan Device Emulator’dür. 2. Device Emulator penceresinde, Launch sekmesi altındaki butona tıklanır. Device Emulator MIDlet uygulamasını çalıştırır ve kaynak kodda girdiğimiz text görüntülenir.
1.Haz.2009
JAVA Micro Edition
67
NETBEANS 6.1 Netbeans 6.1- Proje Derleme ve Çalıştırma 3. MIDlet uygulamasını kapatmak için Exit butonuna tıklanır. Emülatör penceresini kapatmak için aygıtın sağ üst köşesindeki butona tıklanır.
1.Haz.2009
JAVA Micro Edition
68
NETBEANS 6.1 Netbeans 6.1- Yeni Java ME MIDP Projesi Oluşturma 1. File > New Project (Ctrl-Shift-N) seçilir. Kategorilerden Mobility seçilir. Projelerden MIDP Application seçilir ve Next tıklanır. 2. Proje isim alanına MyHelloMIDlet girilir ("MID" büyük harflerle yazılır). Varsayılan proje alanı kullanılır ya da sistemindeki farklı bir dizin seçilerek değiştirilir. Bu pratik çalışmada $PROJECTHOME gibi bir dizin seçeriz. 3. Main Project checkbox ayarları seçilir ve Create Hello MIDlet checkbox’ındaki işaret kaldırılır. Next tıklanır.
1.Haz.2009
JAVA Micro Edition
69
NETBEANS 6.1 Netbeans 6.1- Yeni Java ME MIDP Projesi Oluşturma 4. Sun Java Wireless Toolkit 2.52 for CLDC as the Emulator Platform seçilir ve geriye kalanlar varsayılan olarak kullanılır. Next tıklanır. 5. "Configuration templates provided by installed CLDC platforms" ve "Sun Java Wireless Toolkit 2.52 for CLDC " klasörleri açılır. Yapılandırmaların her birinin kutusu işaretlenir. IDE otomatik olarak listelenen her şablon için yeni proje yapılandırması oluşturur.
1.Haz.2009
JAVA Micro Edition
70
NETBEANS 6.1 Netbeans 6.1- Yeni Java ME MIDP Projesi Oluşturma 6. Finish tıklanır. IDE $PROJECTHOME/MyHelloMIDlet proje klasörünü oluşturur. Proje klasörü tüm kaynaklarınızı ve proje metaverilerini içerir, Ant script projesi gibi. 7. Explorer penceresinde MyHelloMIDlet düğümüne sağ tıklanır ve New > MIDlet seçilir. 8. MIDlet ismi HelloMIDlet girilir ("MID" büyük harflerle yazılır). Finish tıklanır. HelloMIDlet.java dosyası oluşturuldu ve kaynak kodu IDE Editor penceresinde görüntülendi.
1.Haz.2009
JAVA Micro Edition
71
NETBEANS 6.1 Netbeans 6.1- Yeni Java ME MIDP Projesi Oluşturma 9. Source Editor tıkla ve değiştir public class HelloMIDlet extends MIDlet public class HelloMIDlet extends MIDlet implements javax.microedition.lcdui.CommandListener {
1.Haz.2009
JAVA Micro Edition
72
NETBEANS 6.1 Netbeans 6.1- Yeni Java ME MIDP Projesi Oluşturma 10. startApp() metodundan önce aşağıdaki text eklenir: private void initialize() { javax.microedition.lcdui.Display.getDisplay(this).setCurrent(get_ helloTextBox()); }
1.Haz.2009
JAVA Micro Edition
73
NETBEANS 6.1 Netbeans 6.1- Yeni Java ME MIDP Projesi Oluşturma public void commandAction(javax.microedition.lcdui.Command command, javax.microedition.lcdui.Displayable displayable) { if (displayable == helloTextBox) { if (command == exitCommand) { javax.microedition.lcdui.Display.getDisplay(this).setCurrent(null); destroyApp(true); notifyDestroyed(); } } } 1.Haz.2009
JAVA Micro Edition
74
NETBEANS 6.1 Netbeans 6.1- Yeni Java ME MIDP Projesi Oluşturma private javax.microedition.lcdui.TextBox get_helloTextBox() { if (helloTextBox == null) { helloTextBox = new javax.microedition.lcdui.TextBox(null, "Make My Day", 120, 0x0); helloTextBox.addCommand(get_exitCommand()); helloTextBox.setCommandListener(this); } return helloTextBox; }
1.Haz.2009
JAVA Micro Edition
75
NETBEANS 6.1 Netbeans 6.1- Yeni Java ME MIDP Projesi Oluşturma private javax.microedition.lcdui.Command get_exitCommand() { if (exitCommand == null) { exitCommand = new javax.microedition.lcdui.Command("Exit", javax.microedition.lcdui.Command.EXIT, 1); } return exitCommand; } javax.microedition.lcdui.TextBox helloTextBox; javax.microedition.lcdui.Command exitCommand; 1.Haz.2009
JAVA Micro Edition
76
NETBEANS 6.1 Netbeans 6.1- Yeni Java ME MIDP Projesi Oluşturma 11. startApp() metoduna initialize();satırını ekle, bu yüzden devamı gibi gözükecek: public void startApp() { initialize(); }
1.Haz.2009
JAVA Micro Edition
77
NETBEANS 6.1 Netbeans 6.1- Yeni Java ME MIDP Projesi Oluşturma 11. startApp() metoduna initialize();satırını ekle, bu yüzden devamı gibi gözükecek: public void startApp() { initialize(); }
1.Haz.2009
JAVA Micro Edition
78
NETBEANS 6.1 Netbeans 6.1- Java ME MIDP Samples
1.Haz.2009
JAVA Micro Edition
79
NETBEANS 6.1 Netbeans 6.1- Java ME MIDP Samples
1.Haz.2009
JAVA Micro Edition
80
NETBEANS 6.1 Netbeans 6.1- Java ME MIDP Samples
1.Haz.2009
JAVA Micro Edition
81
NETBEANS 6.1 Netbeans 6.1- Java ME MIDP Samples
1.Haz.2009
JAVA Micro Edition
82
NETBEANS 6.1 VisualMobileDesignerPalatte Databinding
1.Haz.2009
JAVA Micro Edition
83
NETBEANS 6.1 VisualMobileDesignerPalatte
1.Haz.2009
JAVA Micro Edition
84
NETBEANS 6.1 VisualMobileDesignerPalatte
1.Haz.2009
JAVA Micro Edition
85
NETBEANS 6.1 VisualMobileDesignerPalatte
1.Haz.2009
JAVA Micro Edition
86
NETBEANS 6.1 VisualMobileDesignerPalatte Komutlar Bileşenler Command sınıfından oluşur. Not: Bütün komut bileşenleri aynı işlevlere sahiptir. Command sınıfı, olayların anlamlı bilgilerini özetleyen bir yapıdır. Komut aktiviteleri bu nesnede özetlenemez. Yani bu bileşen sadece "command" hakkında bilgi içerir, komut etkinleştirildiğinde bir olay gerçekleşmez. Displayable ile ortak olan CommandListener’da bu olayın gerçekleşmesi tanımlıdır. Komut nesneleri, kullanıcı arayüzünde sunulur. Nasıl sunulduklarına dair olan bilgi komutta bulunur. 1.Haz.2009
JAVA Micro Edition
87
NETBEANS 6.1 VisualMobileDesignerPalatte Komutlar
1.Haz.2009
JAVA Micro Edition
88
NETBEANS 6.1 VisualMobileDesignerPalatte Elements
1.Haz.2009
JAVA Micro Edition
89
NETBEANS 6.1 VisualMobileDesignerPalatte Nesneler Bileşenler Item sınıfındandır.
1.Haz.2009
JAVA Micro Edition
90
NETBEANS 6.1 VisualMobileDesignerPalatte Nesneler Bileşenler Item sınıfındandır.
1.Haz.2009
JAVA Micro Edition
91
NETBEANS 6.1 VisualMobileDesignerPalatte Nesneler Bileşenler Item sınıfındandır.
1.Haz.2009
JAVA Micro Edition
92
NETBEANS 6.1 VisualMobileDesignerPalatte Nesneler Bileşenler Item sınıfındandır.
1.Haz.2009
JAVA Micro Edition
93
NETBEANS 6.1 VisualMobileDesignerPalatte Nesneler Bileşenler Item sınıfındandır.
1.Haz.2009
JAVA Micro Edition
94
NETBEANS 6.1 VisualMobileDesignerPalatte Flow Uygulama "flow" ilişkili bileşenleri.
1.Haz.2009
JAVA Micro Edition
95
NETBEANS 6.1 VisualMobileDesignerPalatte Flow
1.Haz.2009
JAVA Micro Edition
96
NETBEANS 6.1 VisualMobileDesignerPalatte Flow
1.Haz.2009
JAVA Micro Edition
97
NETBEANS 6.1 VisualMobileDesignerPalatte Flow
1.Haz.2009
JAVA Micro Edition
98
NETBEANS 6.1 VisualMobileDesignerPalatte Flow
1.Haz.2009
JAVA Micro Edition
99
NETBEANS 6.1 VisualMobileDesignerPalatte Araçlar
1.Haz.2009
JAVA Micro Edition
100
NETBEANS 6.1 VisualMobileDesignerPalatte SVG Bileşenleri SVG tabanlı UI bileşenleri
1.Haz.2009
JAVA Micro Edition
101
NETBEANS 6.1 VisualMobileDesignerPalatte SVG Bileşenleri SVG tabanlı UI bileşenleri
1.Haz.2009
JAVA Micro Edition
102
Kaynakça
http://www.java.com/tr/download/faq/index_mobile.xml http://www.bildirgec.org/yazi/java-me-nedir http://hosaf.org/2009/02/java-me-yi-anlamak http://www.godoro.com/Divisions/Ehil/Mecmua/Magazines/Articles/txt/html/article_J2me http://www.godoro.com/Divisions/Ehil/Mecmua/Magazines/Articles/txt/html/article_J2ME http://www.java.com/tr/download/faq/whatis_j2me.xml http://www.mobilpro.com/makaleler/arsiv/J2ME_temelleri/J2ME_temelleri.html
1.Haz.2009
JAVA Micro Edition
103