Aplikacje sieciowe Aplikacje na urządzenia mobile Platformy dla aplikacji na urządzenia mobilne • • • • • • • • Java ME (Micro Edition) .NET Compact Framework Android Ipad, IPhone Windows Phone 7 BlackBeery Symbian Środowiska zależne od platformy sprzetowej Java Micro Edition Konfiguracja urządzenia • Connected Limited Device Configuration (CLDC) Profile: – Mobile Information Device (MID) – Personal Digital Assistant (PDA) • Connected Device Configuration Profile: – Foundation Ograniczenia Maszyny virtualnej • Brak implementacji wszystkich klas • Brak implementacji liczb zmiennoprzecinkowych • Brak kontroli nad obiektem Garbage Colektor • Ograniczona obsługa wątków • Za obsługę wyjątków odpowiedzialne jest urządzenie Tworzenie aplikacji mobilnej (MIDLET) import javax.microedition.midlet.*; import javax.microedition.lcdui.*; public class HelloMIDlet extends MIDlet implements CommandListener { private boolean midletPaused = false; public Display getDisplay () { return Display.getDisplay(this); } public void exitMIDlet() { switchDisplayable (null, null); destroyApp(true); notifyDestroyed(); } public void startApp() { if (midletPaused) { resumeMIDlet (); } else { initialize (); startMIDlet (); } midletPaused = false; } public void pauseApp() { midletPaused = true; } public void destroyApp(boolean unconditional) { } } Środowisko programistyczne NETBEANS Platforma .NET Ograniczenia • Brak możliwości tworzenia aplikacji ASP.NET na urządzenia mobilne • Ograniczenia w dostępności klas lub metod w klasach • Ograniczenie wykorzystania baz danych (w praktyce tylko MS SQL Compact Edition) • Inny sposób korzystania z plików • Nie wspiera serializacji binarnej i SOAP Środowisko Visual Studio Tworzenie aplikacji using System; using System.Linq; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; namespace SmartDeviceTest2 { public partial class MainSmartPhoneForm : Form { public MainSmartPhoneForm() { InitializeComponent(); } private void MainSmartPhoneForm_Load(object sender, EventArgs e) { this.tKlientTableAdapter.Fill(this.mobileDataBaseDataSet.TKlient); } } } Podsumowanie Tworzenie aplikacji mobilnych wymaga uwzględnienia: • Ograniczonych zasobów urządzenia • Ograniczonego i zmienionego standardowego API • Specyfiki działania tego typu aplikacji