Makale Özeti

Merhabalar, bu yazımızda Mobil uygulama yazmak isteyen arkadaşların bana en çok sordukları sorunun yanıtını vereceğim. “Mobile uygulama yazacağım ama internet explorerde çalıştırıyor, bunun için bir emülatör yokmu ?” Cevabı bildiniz var! :)

Makale

Mobil Web uygulamaları için Emülator Kullanmak

Merhabalar, bu yazımızda Mobil uygulama yazmak isteyen arkadaşların bana en çok sordukları sorunun yanıtını vereceğim. “Mobile uygulama yazacağım ama internet explorerde çalıştırıyor, bunun için bir emülatör yokmu ?” Cevabı bildiniz var! :)

 

İlk önce emulator kavramını açıklamak istiyorum, Emülatör varolmayan bir platformun mevcut platformunuzda çalıştırılmasını sağlayan programa denir. Yani aslında bir program sizin platformunuzu (örneğin Windows 2003) başka bir platforma (örneğin bir Cep telefonu) çevirir. Emulator yerine bazen simulator deyimide kullanılıyor.

 

Benim en çok beğendiğim Emülatör Openwave emülatörüdür. Sadece benim değil bir çok cep telefonu üreticiside aslında Openwave in oluşturduğu bu programı kullanıyor kendi telefonlarında… Ancak tabiiki başka emülatörlerde mevcut, bunun için www.asp.net sitesine girip üst bölümden “Mobile” ı seçin açılan sayfadanda “Mobile Device Simulators” i seçip diğer emülatörlerden bazılarını görebilirsiniz. (bazı linkler çalışmıyor, sanırım siteyi güncellemiyorlar :) dediğim gibi ben size Openwave i anlatacağım, bunun için; http://developer.openwave.com/dvl/tools_and_sdk/openwave_mobile_sdk/download.htm

sitesine girin oradan Continue butonuna basın çok basit bir kayıt ekranı gelecek, bu sayfayı kullanarak kayıtlı kullanıcı olmanız gerekiyor. Ben bu dökümanı yazarken 6.2.2 sürümü vardı ve ona göre anlatacağım, indirmeniz gereken dosyanın boyutu 57.8 MB biraz beklemeniz gerekecek, ama emin olun pişman olmayacaksınız :)

 

İndirdikten sonra gelen zip i açın, açılan klasörün içine girip index.htm i çalıştırın. Internet explorer açılacak ve sizin için hazırlanan bu SDK (Software Development Kit) nın içeriğini gösterecek. Sol menüden “Tools & Technologies” başlığının altından “Phone Similators” e tıklayın.  Açılan sayfanın sağ bölümünde “Tools” başlığı altında “Openwave Phone Simulator 6.2.2 Main Package” e tıklayın ve burada oluşacak programı kurun. Işte emülatörümüzü kurmuş olduk. Şimdi bunu Visual Studio .Net 2003 ortamımıza tanıtmamız gerekiyor. Hemen visual studio .Net 2003 ü açın ve yeni bir “Asp .Net Mobile Web Application” projesi oluşturun. Adına MobileTest yazın ve OK a basın.

 

Geleneksel olarak yeni bir şey denerken ilk önce “Hello World” yazdırılır. Bizde emülatörümüzü denerken bunu yapacağız. Karşınızda mobile Form var hemen formunuzun üstüne bir label birde command (buton) yerleştirin. Ve button a iki kere tıklayın command1_Click olayına geçeceksiniz burada Vb.Net ten ve Asp.Net ten aşina olduğunuz kodu yani

Label1.Text = "Hello World"

Kodunu yazın.

İlk önce direk çalıştırın projeniz varsayılan tarayıcınız ile yani Internet Explorer ile görüntülenecek buradan şöyle bir anlamda çıkıyor aslında sizin yazdığınız bu uygulamada kullandığınız mobile kontroller internet explorerdede gayet düzgün olarak görüntüleniyor... burada aslında bilinmesi gereken şey tarayıcınızın yetenekleri bununla ilgili makalenin sonunda biraz daha fazla bilgi vereceğim. Şimdi emülatörümüzü VS.Net e tanıtalım.

 

Bu işlem için solution Explorer da bulunan MobileWebForm1.aspx e sağ tuş tıklayın ve Browse With e basın. açılan diyalog kutusunda sizin şu anda VS.Net e tanımlanmış olan tarayıcılarınız listeleniyor biz buraya yeni bir tane daha ekleyeceğiz. Add butonuna basın. buradan “Openwave\SDK 6.2.2\program\http” yolunu izleyin ve “OSDK62http.exe” ye iki kere tıklayın.

“Friendly Name” bölümünede görüntülenmesini istediğiniz ismi yazın ben buraya “openwave” yazdım ve daha sonra OK butonuna basın. Yeni eklediğimiz openwave yi seçin ve Browse tuşuna basın.

İşte karşınızda uygulamanız çalışıyor. Mouseyi kullanamayacağınızı hatırlatmak istiyorum (genellikle command butonuna mouse ile basmayı deneyeceksiniz :) tuş takımının sol üstündeki Go’ nun hemen üstündeki butona basın. “Hello World” yazsını göreceksiniz.

Emülatörümüzü kurduk isterseniz bu tarayıcıyı varsayılan (default) tarayıcınız yaparak her çalıştır dediğinizde bu programın çalışmasını sağlayabilirsiniz.

Şimdi geldik tarayıcı yeteneklerine aslında bilinmesi gereken nokta şudur. Bir sürü cep telefonu modeli var ekranı büyük olan küçük olan, renkli olan renksiz olan yada resim gösterebilen yada gösteremeyen. Siz bir .Net programcısı olarak bunları çok fazla bilmek zorunda değilsiniz. .Net Framework gelen tarayıcıyı (mobil cihazın üstünde varsayılan olarak gelen tarayıcıyı) tanıyarak ona göre bir çıktı üretecektir. Peki .Net bunu nereden biliyor.

 

.Net Framework kurulurken makineniz ile ilgili ve .Net programlarının çalışması ile ilgili bir dosyayıda makinenize kurar. Bu dosya machine.config dosyasıdır. Aslında web uygulamalarımızda yer alan Web.Config dosyası, Machine.Config dosyasından türetilmiştir, işte .Net in tarayıcıları tanıyabilmesi bu dosya ile olur. Bu dosya Windows un kurulu olduğu sürücüde Windows klasörünün içinde Microsoft.NET\Framework klasörlerinin altındadır. Eğer Visual Studio .Net 2003 kullanıyorsanız büyük bir ihtimalle Framework klasörünün altında birden çok klasör göreceksiniz. En büyük rakamlı olanı seçin (mesela bende “v1.1.4322” klasörü) buradanda config klasörüne geçin. İşte machine.config dosyası burada. Bu dosya gelen tarayıcının kim olduğunu anlayıp, vericeği görüntüyü ona göre düzenliyor.

Bu makalemizde bir emülatör kurulmasını ve machine.config dosyasının ve desteklenen telefonları inceledik. Makale ile ilgili herhangi bir sorununuzda bana mail yollayabilirsiniz.

 

Levent Cenk Çağlar

cenkc@yazgelistir.com