Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

.NET Compact Framework & Webanwendungen Mobile Computing mit Windows Mobile.

Ähnliche Präsentationen


Präsentation zum Thema: ".NET Compact Framework & Webanwendungen Mobile Computing mit Windows Mobile."—  Präsentation transkript:

1

2 .NET Compact Framework & Webanwendungen Mobile Computing mit Windows Mobile

3 WAS SIE HIER NICHT LERNEN 1 Wie testet man, ob ein Ei schlecht ist?

4 Agenda 2 I Was ist Mobile Computing? Mobile Betriebssysteme von Microsoft Wer kann Mobile Computing? II Grundlagen Mobile Computing Plattformen, Werkzeuge Leistungsmerkmale der SDKs, Browser etc. mobile Anwendungen / Webanwendungen III Fazit Lohnt sich Mobile Computing? I Was ist Mobile Computing?

5 Mobile Computing Mobile Betriebs- systeme Mobile Geschäfts- prozesse Mobile Geräte

6 Windows Mobile ist ein Markenname von Microsoft Die mobilen Betriebssysteme 4

7 Die Basis mobiler Betriebssysteme 5 Torsten Weber | I Was ist Mobile Computing? [1]

8 Partnerinnovationen graduelle Verbesserungen 3G/UMTS, WiFi, Voice/Data neue APIs höhere Produktivität Word, Excel, Powerpoint Mobile Persistent Storage ActiveSync 4 besseres Multimedia WMP 10 Mobile HDD, USB 2.0 … Windows Mobile 5 / 6 6

9 vor einigen Jahren waren mobile Anwendungen schwerer zu entwickeln, das ist heute leichter die Werkzeuge sind erheblich mächtiger.NET Compact Framework ist verfügbar keine tief greifenden Kenntnisse oder spezielle Ausbildung erforderlich jeder kann prinzipiell sofort damit entwickeln Wer kann Mobile Computing? 7 Torsten Weber | I Was ist Mobile Computing?

10 Entwicklung für mobile Geräte nicht vergleichbar mit Entwicklung für Desktops oder Server unter Windows Mobile 5 nur 32 Prozesse und nur 32 MB virtueller Adressierungsraum Einschränkungen wurden mit Windows Embedded CE 6 aufgehoben Embedded CE 6 != Windows Mobile 6 Windows Mobile ist anders 8 Torsten Weber | I Was ist Mobile Computing?

11 Microsoft: mobile Anwendungen sollten nicht beendet werden andere Speicherverwaltung: Anwendungen können jederzeit beendet werden darauf kann reagiert werden Windows Mobile ist anders 9 Torsten Weber | I Was ist Mobile Computing?

12 Windows Mobile ist anders 10 Torsten Weber | I Was ist Mobile Computing? andere Denkweise beim Zugriff auf Daten

13 Windows Mobile ist anders 11 Torsten Weber | I Was ist Mobile Computing?

14 Windows Mobile ist anders 12 Torsten Weber | I Was ist Mobile Computing?

15 Windows Mobile ist anders 13 Torsten Weber | I Was ist Mobile Computing? 192 dpi 96 dpi

16 Windows Mobile ist anders 14 Torsten Weber | I Was ist Mobile Computing?

17 Windows Mobile ist anders 15 Torsten Weber | I Was ist Mobile Computing?

18 prinzipiell kann jeder Mobile Computing mächtige Entwicklungsumgebung + Kenntnisse in.NET Framework und / oder.NET Compact Framework != konzeptionell gutes Mobile Computing es benötigt auch einen Erfahrungsschatz Wer kann Mobile Computing? 16 Torsten Weber | I Was ist Mobile Computing?

19 Was ist, wenn die Erfahrung fehlt? Was ist, wenn nur ein Aspekt mobil gemacht werden soll? Wer kann Mobile Computing? 17 Torsten Weber | I Was ist Mobile Computing?

20 Sie brauchen was mobiles! 1. Lösung: Terminalanwendung 18 Torsten Weber | I Was ist Mobile Computing?

21 Sie brauchen was mobiles! 2. Lösung: Webanwendung 19 Torsten Weber | I Was ist Mobile Computing?

22 Sie brauchen was mobiles! 3. Lösung:.NET Compact Framework 20 Torsten Weber | I Was ist Mobile Computing?

23 Sie brauchen was mobiles! 4. Lösung:.NET Compact Framework + XSLT 21 Torsten Weber | I Was ist Mobile Computing?

24 Sie brauchen was mobiles! Welche Lösung? Torsten Weber Mobile Betriebs- systeme Mobile Geschäfts- prozesse Mobile Geräte

25 Funktionsweise einer Versicherung: kollektive Risikoübernahme –die Verteilung von Risiko auf Menge und auf Zeit machen Coca Cola und Pepsi dasselbe? das Geschäft ist das Was braucht eine Versicherung Service-Orientierung oder Mobile Computing und dort AJAX? ist das Wie Wie und Was unterscheiden können 23 Torsten Weber | I Was ist Mobile Computing?

26 Wie und Was unterscheiden können Kartendienst Adresssuche Mobiles System Desktop System Datenbank Service Ereignisse Datenbank Service Ereignisse XML JPEG, PNG URL, Parameter XML MSXML SOAP JSON VPN MSMQ Kompri mierung II Grundlagen Mobile Computing

27 Entwicklung für das.NET Compact Framework –mit Visual Studio Standard Edition (2005) bzw. Professional (2008) (aber jeweils nie Express) native (C++) Device-Programmierung –kein extra Werkzeug mehr für eMbedded VC++ –MFC 8, ATL 8 (auch für Smartphone), STL, CRT Forms-Designer, Datentools, etc. Emulatoren –ARM-Image Deployment-Designer (CAB-Files) + Code-Sign. Werkzeuge für Mobile Computing 25 Torsten Weber | II Grundlagen Mobile Computing

28 ist kompatible Teilmenge des.NET Framework für Windows CE-basierte Geräte bekannte.NET-Entwicklung –RAD für mobile Geräte –Designer, Debugger, Emulatoren im Geräte-ROM seit WM 2003 –Vorteil gegenüber Desktop, Server in.NET CF 2 kein COM Interop Das.NET Compact Framework 26 Torsten Weber | II Grundlagen Mobile Computing

29 Ein Vergleich.NET /.NET CF 27 Torsten Weber | II Grundlagen Mobile Computing

30 Die Funktionalitäten beim.NET CF 2 28 Torsten Weber | II Grundlagen Mobile Computing Visual Studio 2005 Display USB or Serial Processor Memory GSM/GPRS CDMA/1xRTT Device Hardware WiFi Bluetooth Radio Drivers Windows Mobile CE DB ActiveSync SQL CE Pocket Outlook Pocket Internet Explorer Windows Media Player Windows CE Software Platform (APIs) Home Screen User Interface/Shell HTML Control DOM GAPI Camera D3DM Location* Remote API Configuration* Bluetooth Security State & Notifications* Pocket Watson Connection Mgr. TAPI* SMS* MAPI* POOM* ActiveSync MultimediaCommunicationDevice ManagementPresentation SQL CE ADO CE XML CE DB OLE DB Data Access Native Win32 ATL Managed.NET Compact Framework Server side ASP.NET Mobile Controls * = Managed wrappers MFC

31 mehr Performance Generics, partielle Klassen COM Interop Kryptographie Message Queues serielle Ports neue Steuerelemente User Controls mit Designer Neuerungen in.NET CF 2 29 Torsten Weber | II Grundlagen Mobile Computing

32 Bluetooth, Druck, IrDA, OBEX Smart Device Framework 32feet.com ComponentOne Infragistics In the Hand Odyssey Software Xceed Wenn das.NET CF nicht reicht 30 Torsten Weber | II Grundlagen Mobile Computing [2], [3], [4]

33 Die Entwicklung einer mobilen Anwendung 31 Torsten Weber | II Grundlagen Mobile Computing Windows.NET CF Desktop Version Visual Studio 2005 C# / VB.NET Windows Mobile.NET CF

34 kompakte relationale Datenbank SQL-Syntax (kompatibel mit SQL Server) hohe Performance unterstützt Replikation & Synchronisation Zugriff per ADO.NET, ADOCE, OLEDBCE 128-Bit-Verschlüsselung der DB unterstützt Transaktionen mobiler SQL Server (ab.NET CF 1) 32 Torsten Weber | II Grundlagen Mobile Computing

35 Multi-User-Support SqlCeResultSet (scrollable updateable Cursor) zusätzlich zu DataReader, DataSet, DataTable Named Parameters Auto-Compact Management-Tools VS2005-Integration Smartphone-Unterstützung für Win CE & Win32 mobiler SQL Server (ab.NET CF 2) 33 Torsten Weber | II Grundlagen Mobile Computing

36 Szenario DataSet 34 Torsten Weber | II Grundlagen Mobile Computing Code / RAMDateisystem / RAM if (Person.New) { datamodel.Update(); …

37 Szenario SqlCeResultSet 35 Torsten Weber | II Grundlagen Mobile Computing Code / RAMDateisystem / RAM if (Person.New) { datamodel.Update(); …

38 .NET Compact Framework 1 SP3 im ROM RAM-Installation von CF 2.0 für PPC & Smartphone SQL Mobile für PPC & Smartphone Managed MAPI, Telephony, Pocket Outlook… State & Notifications Broker D3D Mobile APIs für Kamera & Location einheitliches CAB-Format Windows Mobile 5 – Was ist neu? 36 Torsten Weber | II Grundlagen Mobile Computing

39 CameraCapture ContactPicker PicturePicker neue Steuerelemente 37 Torsten Weber | II Grundlagen Mobile Computing

40 früher kein COM Interop, unter.NET CF 2 aber oder mit Windows Mobile 5 API –geht auch mit.NET CF 1 Beispiel OutlookSession outlook = new OutlookSession(); Contact me = new Contact(); me.FullName = Torsten Weber; outlook.Contacts.Items.Add(me); // gespeichert me.JobTitle = BASTA Speaker; me.Update(); // gespeichert neue APIs - Managed Outlook Mobile 38 Torsten Weber | II Grundlagen Mobile Computing

41 Microsoft.WindowsMobile.PocketOutlook & SMS –+ Attachments Recipient Contact ! Beispiel Dim message As New SmsMessage message.To.Add(New Recipient(callerNumber)) message.Body = Update Process 203 RPC40o" + selectedTime message.Send() neue APIs - Managed Messaging 39 Torsten Weber | II Grundlagen Mobile Computing

42 State & Notifications API einheitliches API zwecks Benachrichtigung, "wenn etwas passiert" nutzt dokumentierte Registry-Keys transient & persistent notifications neue APIs - SnAPI 40 Torsten Weber | II Grundlagen Mobile Computing

43 Szenario Dispatching mit SnAPI 41 Torsten Weber | I Was ist Mobile Computing? ISDNISDN

44 zwei Schritte –SystemState-Objekt erzeugen –Event-Handler anhängen Beispiel SystemState callerId = new SystemState( SystemProperty.PhoneIncomingCallerContact); callerId.Changed += new EventHandler(callerId_Changed); void callerId_Changed(object sender, ChangeEventArgs e) {Contact caller = (Contact)callerId.CurrentValue; neue APIs - SnAPI 42 Torsten Weber | II Grundlagen Mobile Computing

45 Beispiel SystemState missedCall; void Form_Load(…) { if(!SystemState.IsApplicationLauncherEnabled( MyApp.MissedCall)) { missedCall = new SystemState( SystemProperty.PhoneMissedCall ); missedCall.EnableApplicationLauncher( MyApp.MissedCall); } else { SystemState missedCall = new SystemState(MyApp.MissedCall); } missedCall.Changed += new EventHandler(missedCall_Changed); neue APIs - SnAPI 43 Torsten Weber | II Grundlagen Mobile Computing

46 Visual Studio –andere IDE ist möglich –Emulatoren sind dabei –mobiler SQL Server ist dabei –Windows Mobile SDKs nachinstallieren Windows Mobile 5 SDK Windows Mobile 6 SDK lokalisierte Abbilder der Emulatoren nachinstallieren –weitere Werkzeuge wie SmartDeviceFramework Leitfaden für die erste mobile Anwendung 44 Torsten Weber | II Grundlagen Mobile Computing

47 für den physischen Zugriff auf mobile Geräte bzw. Emulatoren: ActiveSync (XP) ab 4.1 bzw. Gerätecenter (Vista) optional –Geräteemulator 2 oder höher Leitfaden für die erste mobile Anwendung 45 Torsten Weber | II Grundlagen Mobile Computing [5] – [13] II Grundlagen mobile Webanwendungen

48 Mobile Webanwendung + Mobile AJAX –mit Internet Explorer Mobile seit Windows Mobile 2003 möglich –auch bei mobilen Geräten gibt es Vorteile von AJAX: Webseiten nicht komplett neu laden spart Bytes und damit Geld – Praxis.NET CF Anwendung + Mobile AJAX –XML-Transformation für mehr Benutzeroberfläche 2 Szenarien für das Wie für Mobile AJAX 46 Torsten Weber | II Mobiles AJAX – Wie geht es?

49 2 Szenarien für das Wie für Mobile AJAX 47 Torsten Weber | II Mobiles AJAX – Wie geht es? Dateninseln (Beispiel 1) MSXML (Beispiel2) SOAP & mehr (nahtlos- mobil.de/cd Beispiel 3) Web- anwendung MSXML (Beispiel 4).NET CF Anwendung

50 2 Szenarien für das Wie für Mobile AJAX 48 Torsten Weber | II Mobiles AJAX – Wie geht es? Dateninseln (Beispiel 1) MSXML (Beispiel2) SOAP & mehr (nahtlos- mobil.de/cd Beispiel 3) Web- anwendung MSXML (Beispiel 4).NET CF Anwendung

51 Was ist klar. Sie brauchen was mobiles! Wie?: Eine Webanwendung mit AJAX 49 Torsten Weber | II Mobiles AJAX – Wie geht es? Detailinformationen: Ihr Mobile Operator ist T-Mobile oder Simyo oder jemand anderes. Wer weiß das schon so genau.

52 Produktdaten mobil abfragen notwendig: Produkt-ID soll verhindert werden: zusätzliches HTML- Drumherum (Overhead) Vorteil: Zwischenschritt eines Seitenaufbaus entfällt, Anwendung weiter sicht- und bedienbar Szenario Webanwendung mit AJAX 50 Torsten Weber | II Mobiles AJAX – Wie geht es?

53 Szenario Webanwendung mit AJAX 51 Torsten Weber | II Mobiles AJAX – Wie geht es? Produkt-ID ? Produkt

54 wie viel übertragen wird, ist mit Fiddler feststellbar (www.fiddlertool.com) unterstützt als HTTP Debugging Proxy einen Debug-Modus wie eine IDE bei Emulatoren / mobile Geräten ist eine Konfiguration für Fiddler notwendig Szenario Webanwendung mit AJAX 52 Torsten Weber | II Mobiles AJAX – Wie geht es?

55 Für die Verwendung von Fiddler auf mobilen Geräten muss ein Browser erst konfiguriert werden. Für den Internet Explorer Mobile 5 unter Windows Mobile 5 (Pocket PC) führen Sie diese Konfiguration über Start, Einstellungen, Reiter Verbindungen, Anwendung Verbindungen, Reiter Erweitert und die Schaltfläche Netzwerk auswählen durch. Stellen Sie anschließend die Option Programme mit automatischem Internetzugriff verwenden auf den Eintrag Firmennetzwerk um. Klicken Sie dann auf die Schaltfläche Bearbeiten und wählen Sie den Reiter Proxyeinstellungen aus. Als nächstes muss die Option Dieses Netzwerk verwendet einen Proxyserver aktiviert und unter Proxyserver der Wert ppp_peer bei einer Verbindung über Bluetooth oder DMA bzw. dtpt_peer bei einer Verbindung über USB eingegeben werden. Klicken Sie anschließend auf Erweitert und im folgenden Dialog auf den Eintrag ppp_peer bzw. dtpt_peer beim Typ HTTP. Jetzt muss nur noch der Anschluss von 80 auf 8888 geändert und das Ganze 5-mal mit OK bestätigt werden. Jetzt ist der Desktop PC an der Reihe bei dem mit der rechten Maustaste im Infobereich der Taskleiste auf das Symbol von ActiveSync geklickt und dort im Kontextmenü der Eintrag Verbindungseinstellungen ausgewählt werden muss. In dem darauffolgenden Dialogfeld muss unter Dieser Computer ist verbunden mit die Option Firmennetzwerk eingestellt und mit OK bestätigt werden. Starten Sie Fiddler und wählen Sie aus dem Menü Tools den Menüpunkt Fiddler Options aus. Im darauf folgenden Dialogfeld Fiddler Options aktivieren Sie die Option Allow remote clients to connect aus und bestätigen mit OK. Docken Sie das mobile Gerät ein. Haben Sie keines zur Verfügung und arbeiten mit einem Emulator kann auch eine virtuelle Dockingstation verwendet werden. Hier muss erst sichergestellt werden, dass sich ActiveSync 4.x mit dem Emulator verbinden kann. In ActiveSync prüfen Sie über den Menübefehl Datei/Verbindungseinstellungen und in dem darauf folgenden Dialogfeld unter Verbindung zu folgenden Anschlüssen zulassen ob dort DMA ausgewählt ist. Anschließend kann über den Menüpunkt Extras/Geräteemulator-Manager per Kontextmenü eines gerade laufenden Emulators der Eintrag In Basisstation ausgewählt werden. Hat alles geklappt, ändert sich das Symbol des ausgewählten Emulators in ein Symbol, das eine Netzwerkverbindung dargestellt. Jetzt kann mit Start\Internet Explorer der Internet Explorer Mobile gestartet und der dabei entstehende Datenverkehr protokolliert und manipuliert werden. Eventuell muss dazu noch die Firewall des Desktop PCs angepasst und dort der Port 8888 freigegeben werden. Mitgeschrieben für Sie! Die Konfiguration von Fiddler 53 Torsten Weber | II Mobiles AJAX – Wie geht es? [3]

56 das Wie – Webanwendung mit Mobile AJAX welche Technologie? zweckadäquat entscheiden –alles laden: XML-Dateninseln –teilweise laden: MSXML –im Kontext laden: Mobile AJAX in Verbindung mit SOAP / XML, JSON usw. Szenario Webanwendung mit AJAX 54 Torsten Weber | II Mobiles AJAX – Wie geht es? übertragene Daten [4], [5], [6]

57 2 Szenarien für das Wie für Mobile AJAX 55 Torsten Weber | II Mobiles AJAX – Wie geht es? Dateninseln (Beispiel 1) MSXML (Beispiel2) SOAP & mehr (nahtlos- mobil.de/cd Beispiel 3) Web- anwendung MSXML (Beispiel 4).NET CF Anwendung

58 Beispiel für eine XML-Dateninsel: … … Szenario Webanwendung mit AJAX Lösung 1: Dateninseln 56 Torsten Weber | II Mobiles AJAX – Wie geht es? DEMO CODE

59 Beispiel für eine XML-Dateninsel: function loadChapters() { xmlDoc = Chapters.XMLDocument; chapters = xmlDoc.getElementsByTagName("Chapter"); for (i = 0; i < chapters.length; i++) { option = new Option(); option.text = chapters[i].attributes.getNamedItem("Name").text; option.value = option.text; document.all.chaptersList.options.add(option); } } Szenario Webanwendung mit AJAX Lösung 1: Dateninseln 57 Torsten Weber | II Mobiles AJAX – Wie geht es? DEMO CODE

61 erlaubt asynchrones Laden von Dateien per HTTP-GET… mit Hilfe von Msxml2.XMLHTTP eventuell kombiniert mit dritter Lösung (Kontext) Szenario Webanwendung mit AJAX Lösung 2: MSXML 59 Torsten Weber | II Mobiles AJAX – Wie geht es?

62 Beispiel laden einer Datei function LoadXmlFile() { if (webRequest) { new ActiveXObject("Msxml2.XMLHTTP"); if (webRequest) { webRequest.onreadystatechange = ParseResponse; webRequest.open("GET", true); webRequest.send(); } } … } Szenario Webanwendung mit AJAX Lösung 2: MSXML 60 Torsten Weber | II Mobiles AJAX – Wie geht es? DEMO CODE

63 2 Szenarien für das Wie für Mobile AJAX 61 Torsten Weber | II Mobiles AJAX – Wie geht es? Dateninseln (Beispiel 1) MSXML (Beispiel2) SOAP & mehr (nahtlos- mobil.de/cd Beispiel 3) Web- anwendung MSXML (Beispiel 4).NET CF Anwendung

64 Internet Explorer Mobile 5 bietet JScript 5.6 bei Windows Mobile 2003 – innerText und innerHMTL nur bei div und span unterstützt –Zugriff auf Inhalte nur innerhalb von … bei Windows Mobile 5 gibt es eine Unterstützung für style und document.all Szenario Webanwendung mit AJAX Lösung 3: SOAP (oder was anderes) 62 Torsten Weber | II Mobiles AJAX – Wie geht es?

65 Beispiel für Windows Mobile 2003 / Windows Mobile 5 Kompatibilität: … Szenario Webanwendung mit AJAX Lösung 3: SOAP (oder was anderes) 63 Torsten Weber | II Mobiles AJAX – Wie geht es? wait.innerHTML = ' '; document.forms['productID'].btnRequest.disabled = true;

66 beim.NET Framework /.NET Compact Framework gibt es Proxyklassen, bei AJAX dagegen ActiveX damit können die Grenzen von JavaScript und HTML überwunden werden Zugriff auf Daten läuft zweigeteilt, asynchron ab Szenario Webanwendung mit AJAX Lösung 3: SOAP (oder was anderes) 64 Torsten Weber | II Mobiles AJAX – Wie geht es?

67 Szenario Webanwendung mit AJAX Lösung 3: Beispiel ASP.NET 2.0 Web Service 65 Torsten Weber | II Mobiles AJAX – Wie geht es? Produkt-ID Produkt 21WS Steuerelemente deaktivieren, Status- bild anzeigen Browserweiche für ActiveX Objekt Methode für Schritt 2 registrieren SOAP- Nachricht zusammen bauen SOAP- Nachricht verschicken Ergebnis von SOAP auswerten und anzeigen Steuerelemente aktivieren, Statusbild ausblenden DEMOCODE

68 2 Szenarien für das Wie für Mobile AJAX 66 Torsten Weber | II Mobiles AJAX – Wie geht es? Dateninseln (Beispiel 1) MSXML (Beispiel2) SOAP & mehr (nahtlos- mobil.de/cd Beispiel 3) Web- anwendung MSXML (Beispiel 4).NET CF Anwendung dynamischdynamisch

69 bei Desktop und Servern bei JSON verwendet normal –über document.CreateElement erzeugen –dann src -Attribut von setzen –bei IE Mobile nicht unterstützt (IE stürzt ab / hängt), src und Ziel erzeugen, als innerHTML eines Szenario Webanwendung mit AJAX Lösung 4: On-Demand-JavaScript 67Torsten Weber | III Fazit

70 // irgendwo // dann mit JavaScript On-Demand Code erzeugen // oder abrufen mit var newScript = " "; scriptHolder.innerHTML = newScript; Methode bei Desktops, Servern wegen Script- Injection nicht unterstützt – Browserweiche Szenario Webanwendung mit AJAX Lösung 4: On-Demand-JavaScript 68Torsten Weber | III Fazit

71 2 Szenarien für das Wie für Mobile AJAX 69 Torsten Weber | II Mobiles AJAX – Wie geht es? Dateninseln (Beispiel 1) MSXML (Beispiel2) SOAP & mehr (nahtlos- mobil.de/cd Beispiel 3) Web- anwendung MSXML (Beispiel 4).NET CF Anwendung dynamischdynamisch

72 Szenario.NET CF mit AJAX (durch XSLT) Lösung: MSXML 70 Torsten Weber | II Mobiles AJAX – Wie geht es? Oberflächen des.NETCF erweiterbar … aber Probleme können entstehen WebBrowser = COM Komplexität im Quellcode III Fazit

73 Mobile Best Practices AB

74 HTTP-Kommunikation ist smart, aber langsam und fett –Fiddler Tool einsetzen –eigene Datenstrukturen und Protokolle einsetzen –nur Header übertragen bei mehreren Backend-Systemen Middle-Tier Mobile Best Practices

75 Zugriffsschichten, nicht pro Formular –Singleton-Provider, Singleton-Base –Bibliotheken… Mobile Best Practices EanReader ean = new EanReader (); ean.Enabled = true; … Singleton- Provider SingletonProvider.Instance.Enabled = true;

76 XML-Verarbeitung bei.NET CF 2 um 40 % schneller XMLDocument im Ausnahmefall –XMLTextReader Datenbank vs. Dateisystem DataSets vs. ResultSets Mobile Best Practices

77 GC.Collect(); bei Bild-Operationen –Bilder sind unverwaltet Generics einsetzen Reflection kostet unheimlich viel Zeit Referenz- oder Werttyp? Mobile Best Practices

78 Multi-Threading einsetzen –bei Splashscreens –bei Datenbankzugriffen –bei Web Service-Zugriffen –Application.DoEvents(); reicht manchmal –BeginUpdate, EndUpdate verwenden Mobile Best Practices

79 Formulare einfach halten –jedes Steuerelement muss sich die Berechtigung verdienen –Tastatur eventuell selber als Formular Muss der Stift sein? –Steuerelement finden –Gestensteuerung –Steuercodes Mobile Best Practices

80

81 Formulare nicht gerätespezifisch –an Unterschiede bei DPI und Ausrichtung denken –Anchoring, Docking verwenden Add-Ins für Visual Studio für P/Invoke Komponenten verwenden Mobile Best Practices

82 PerformanceCounter oder Power Toys verwenden Remote Performance Monitor and GC Heap Viewer NETCF CLR Profiler App Configuration Tool (NetCFcfg.exe) NETCF ServiceModel Metadata Tool Remote Logging Configuration Tool NETCF Network Log Viewer Mobile Best Practices

83 PerformanceCounter oder Power Toys verwenden Remote Performance Monitor and GC Heap Viewer NETCF CLR Profiler App Configuration Tool (NetCFcfg.exe) NETCF ServiceModel Metadata Tool Remote Logging Configuration Tool NETCF Network Log Viewer Mobile Best Practices

84

85

86

87

88

89

90 Fazit 88Torsten Weber | III Fazit jeder kann Mobile Computing –Berührungsängste –Erfahrungsschatz enorme Wachstumsraten –2012 –führt kein Nischendasein mehr Mobile Computing mit.NET CF –relativ einfach –ein so geht es los-Leitfaden fehlt –Dokumentation manchmal sehr dürftig

91 Fragen? 89Torsten Weber Wer exportiert die meisten Nilpferde…?

92 [1] Quelle Abbildungen: de.wikipedia.org/wiki/Legode.wikipedia.org/wiki/Lego [2] Smart Device Framework, [3] In the Hand, [4] Bluetooth, IrDA, OBEX, [5] ActiveSync v4.5 German – Deutsch A69E4CFF6295&displaylang=de A69E4CFF6295&displaylang=de [6] Windows Mobile 5.0 SDK for Pocket PC 717CBE5D25ED&displaylang=en 717CBE5D25ED&displaylang=en [7] Windows Mobile 5.0 SDK for Smartphone 5CD29AB5F8D9&displaylang=en 5CD29AB5F8D9&displaylang=en [8] Windows Mobile 6 Professional and Standard Software Development Kits Refresh 3d48091a390b&displaylang=en 3d48091a390b&displaylang=en Links & Informationen 90Torsten Weber

93 [9] Localized Windows Mobile 5.0 Pocket PC Emulator Images 18E8E842178F&displaylang=en 18E8E842178F&displaylang=en [10] Localized Windows Mobile 5.0 Smartphone Emulator Images b7&DisplayLang=en b7&DisplayLang=en [11] Windows Mobile 6 Localized Emulator Images 4F370A65A582&displaylang=en 4F370A65A582&displaylang=en [12] Microsoft Device Emulator 2.0 – Eigenständige Version fea5e &displaylang=de fea5e &displaylang=de [13] Windows Mobile Device Center Links & Informationen 91Torsten Weber

94 Download des Verweiswerkzeuges Programmieren mit dem.NET Compact Framework. Anwendungsentwicklung für mobile Geräte, Ruprecht Dröge, Peter Nowak, Torsten Weber Microsoft Press Deutschland 06/2008, Microsoft Press Deutschland 09/2006, Links & Informationen

95 Torsten Weber * 22. März 1977, Wurzen MVP Visual Developer Device Application Development Theodor-Körner-Straße Wurzen + 49 (3425) Blog, XING und Publikationen: Impressum


Herunterladen ppt ".NET Compact Framework & Webanwendungen Mobile Computing mit Windows Mobile."

Ähnliche Präsentationen


Google-Anzeigen