Makale Özeti

Yaptığımız uygulamalar elbette iş lojiği olarak mükemmel çalışan, hatalar vermeyen ve kendi içerisinde oldukça başarılı uygulamalardır. Fakat profesyonellik sadece iş lojiğinin mükemmel çalışmasında değildir, platformla, diğer uygulamalarla, limitasyonlarla uyumluluğu, kullanıcı arayüzleri ve cihazla uyumluluğu uygulamamızın ne derece başarılı olduğunun bir ölçütüdür.

Makale

Pocket PC Uygulamalarında Dikkat Etmemiz Gerekenler - I

    Yaptığımız uygulamalar elbette iş lojiği olarak mükemmel çalışan, hatalar vermeyen ve kendi içerisinde oldukça başarılı uygulamalardır. Fakat profesyonellik sadece iş lojiğinin mükemmel çalışmasında değildir, platformla, diğer uygulamalarla, limitasyonlarla uyumluluğu, kullanıcı arayüzleri ve cihazla uyumluluğu uygulamamızın ne derece başarılı olduğunun bir ölçütüdür. Makale serimde, pocket pc uygulamaları geliştirirken dikkat etmemiz gereken ayrıntıları detaylı bir şekilde inceleyeceğiz.

Install / Uninstall Gereklilikleri

    1) Windows Mobile Uygulama Instalasyon Mekanizması:

        Uygulamalarımızın minimum sorunla kurulabilmesi için bir CAB dosyası halinde cihaza gönderilmesi ve bu CAB dosyası üzerinden kurulması gerekmektedir. Bunun için Visual Studio Cabwiz SDK yı kullanarak bize CAB dosyalarını (bir çok CPU mimarisine uygun şekilde) hazırlar. CPU mimarisi ile eşleşen CAB dosyasını cihaza gönderip çalıştırdığımızda, uygulamamız kurulmuş olur. Fakat bazı programların, ActiveSync üzerinden kurulup kaldırılması gerekmektedir.(Gerçekte tercih edilen de budur.) Böyle bir durumda uygulmanızı oluşturan CAB dosyaları, bir MSI dosyası içine paketlenmeli ve CEAppMgr uygulaması üzerinden kurulum yapılmalıdır. Bu tarz kurulum için daha önceden yazdığım bu makaleye bakabilirsiniz.

    2) "Programs" dizininde kısayollar oluşturulmalıdır.

        Genelde Visual Studio üzerinden CABwiz SDK yı çalıştırdığımız için, kısa yol, icon gibi detaylar otomatikman düzenlenirler. Fakat CABwiz SDK yı VS.NET üzerinden kullanmıyorsak, My Pocket Pc\Windows\Start Menu\Programs ve ya sadece oyunlar için My Pocket Pc\Windows\Start Menu\Programs\Games klasörüne kısayol oluşturduğundan emin olmanız gerekir.

    3) Kurulum Desteği :

        Windows Mobil 2003 SE işletim sistemli ve ya daha üst cihazlara, daha önceki versiyonlara uygun bir program kurmaya çalıştığınızda şöyle bir hata verecektir:    

Bu sadece basit bir uyarı mesajıdır. 2003 SE ve daha üst versiyonlarda ekran özelliği olarak gelen "screen orientation mode" desteği olmadığının bir uyarısıdır. Fakat bu uyarı bir çok son kullanıcı için can sıkıcı olabilir. Bunun önlenmesi gerekir. Bunu önlemek için, uygulamınızın olduğu dizinde obj\Debug ve ya obj\Release dizinlerine gidin. Oradaki UygulamaAdi_PPC.inf dosyasının içerisinde [CEDevice] başlığı altına BuildMax alanı ekleyin ve 0xE0000000 değerini girin.

 

[CEDevice]
VersionMin=3.00
VersionMax=4.99
BuildMax = 0xE0000000

"0xE0000000" kodu tüm cihazlarda bu uyarı mesajını kaldıracaktır.

Registry Gereklilikleri

    1) Kullanıcı Ayarlarının Uygulama Bazında Olması :

        Uygulamanızda kullanıcı ayarları, programın ayarları ile ilgili bir çok şeyi regisrty'de tutabilirsiniz. Bunlarla ilgili herhangi bir sınırlama söz konusu değildir. Fakat, uygulamanız kaldırılırken (uninstall) arkasında mümkün olduğunca az iz bırakmalıdır. Bu yalnızca kural yalnızca registry bazında değil, kullanılan dosyalar, data base vb.. bir çok şeyi de kapsamaktadır. Bunun için Uninstall_Init() ve Uninstall_Exit() fonksiyonları kullanılabilir.

    2) DLL lokasyonları :

        Uygulamalarınızda kullandığınız tüm DLL'ler  Windows/shared files/DLLs ve ya uygulamanın kendi folderında saklanmalı. DLL'ler dışında tüm uygulama dosyaları ise, uygulumanın kendi folderında bulunmalıdır. Kullanıcı kurulum sırasında uygulamanın çalışacağı folderı değiştirebileceği için, uygulamanızın nereye kurulduğunu

    HKLM\Software\Apps\Provider AppName\InstallDir     

değerinden görebilirsiniz. Bu keydeki Provider ve AppName, UygulamaAdı_PPC.inf dosyasından gelmektedir.

[Version]
Signature="$Windows NT$"
Provider="My Company"
CESignature="$Windows CE$"

[CEStrings]
AppName="SmartDeviceApplication1"
InstallDir=%CE1%\%AppName%

CAB dosyanızı hazırlamadan önce bu dosyayı detaylı bir şekilde editlemelisiniz.

    Görsellik

        1) Landscape / Square :

        Bildiğiniz gibi çoğu Pocket PC landscape bir ekran sunarken bazıları da 240 x 240 çözünürlüklü kare ekranlar kullanmaktadırlar. Böyle bir durumda, programınızın ve kontrollerin kullanılabilir kalması, scrollbar'lar ile desteklenmesi gerekmektedir.

        2) DPI sorunları :

        Özellikle iconlarda,  eğer icon cihaz ile aynı çözünürlükte değil ise, boyutu otomatik olarak genişletilecektir. Böyle bir durumda iconun resim kalitesi düşecek ve hoş görünmeyecektir. Farklı dpilarda çalışan cihazlar için bunlarla eşleşecek iconlar, görsel araçlar yaratılmalıdır.

        3) Ekran çevrimleri :

        Uygulamanız yalnızca lanscape ve dikey görünümde ya da  yatay görünümde çalışıyor olabilir. Örneğin oyunların bir çoğu bu şekildedir. Böyle bir durumda yapmanız gereken, uygulamanız başlarken ekran rotasyonunu kendinize göre ayarlamanız, kapanırken ise rotasyonu geri almanız gerekir.

 

    Bu makalede, mobil uygulamalarda dikkat etmemiz gereken

Gelecek konular : User Interface, Shell ve fonksiyonellik

Kivanc OZUOLMEZ