Intermec Technologies Considerations for Mobile Application Development Developer Support, 2012 Intermec Technologies 1/3/2012
Table of Contents What is an AKU?... 3 Device OS / IVA (SSPB)... 3 Operating System... 3 SSPB (IVA)... 3 Compact Framework Version Information... 4 Development Comparisons... 4 Development Languages... 5 Development Environments... 5 Software Kits Used in Development... 6 Software Development Kits... 6 Intermec Developer Libraries... 6 WWAN Toolkit... 7 Platform SDK s... 7 Device Management... 7 Intermec SmartSystems Foundation... 7 WM6... 9 New Features... 9 WM6 Naming Conventions... 9 Windows Mobile Compatibility... 9 Additional Information... 10 Intermec Downloads... 10
List of Tables Table 1 - AKU Version... 3 Table 2 - Compact Framework Versions... 4 Table 3 - Net Compact Framework Development Comparison... 5 Table 4 - Development Environments... 6 Table 5 - Platform SDKs... 7
What is an AKU? Microsoft periodically releases updated builds for the Windows Mobile operating system. These released updates are called Adaptation Kit Updates and are commonly referred to as AKU. These updates rarely have any impact on consumers and generally include fixes or updated drivers for the operating system. Sometimes new features will be included in an AKU build. For example, if you rely on the Messaging and Security Feature Pack, this was included in Windows Mobile 5 AKU release 2.0 and will be available on all later updates. To find the AKU version on the device itself navigate to Start > Settings > System Tab > About. The large number in parenthesis is the build number, and from that, you can get the AKU release. This information can also be obtained from the registry at; HKLM\SYSTEM\Versions\AKU. Below is a list of past and current AKU versions. Windows Mobile 5 Windows Mobile 6 Windows Mobile 6.5 Windows Mobile 6.5.3 2.0 0.2 5.0.60 5.3.12 2.1 0.4.4 5.3.10 5.3.12.4 2.2 1.4.6 5.3.11 2.3 1.5.1 2.5 Table 1 - AKU Version Device OS / IVA (SSPB) Operating System The operating system version is listed in four sections that will appear like this 5.18.13.0020. The first two sections describe the actual version and sub-version, or build, of the OS. The remaining two versions are used internally. SSPB (IVA) The SmartSystem Platform Bundle (SSPB) for Intermec mobile computers is the term giving to the previously known Intermec Value Add software (IVA). The SSPB contains the files necessary to operate things such as the scanner, camera and the radios. There are certain other files loaded with the SSPB as well such as the printer support files and the Wavelink Avalanche Enabler installation. Device administrators can tailor the SSPB installation to their needs by using an on-device application called InstallSelect. To use the InstallSelect application, browse to the Windows folder on the handheld and locate the InstallSelect executable file. After selecting OK to the caution message that is displayed, the user will be presented with a choice of seven installed utilities. By checking or un-checking the options that appear the administrator can select which Intermec Value Added application to use on the handheld. For instance, if the administrator does not need Wavelink Avalanche or Funk Wireless Security then by checking or un-checking either option the installed feature will be either removed (un-checked) or added (checked). Care should be taken when selecting the options to remove. Some of the displayed options are required in order to use the components on the handheld. For example, if Data Collection & Intermec Settings is removed the handheld will no longer scan barcodes or be SmartSystems enabled. InstallSelect provides options for the following value added components;
Data Collection & Intermec Settings Scanner and Device Management files Funk Wireless Security 802.11 Wireless radio security files Printer Support Support files for Intermec Printers Avalanche Enabler The Wavelink Enabler Intermec DHCP Client Bluetooth Bluetooth support files Additional Files Separate configuration utilities The SSPB version number format is similar to the operating system version format and is available for download from the Intermec web site in an SD Card installation method or a SmartSystems Console installation method. Compact Framework Version Information Application development on Windows Mobile devices use a development library known as Compact Framework (also referred to as CF ). This compact framework is a subset of the framework used on desktop PC application development and implements about 30% of the full framework. CF version 1.0 is used on the Windows Mobile 2003 operating system and CF version 2.0 was made available for WM5 devices. Microsoft may also release Service Packs for the compact framework versions. Each new release, or service pack, contains updates and enhancements to the previously released version. There are two ways to check the release version and service pack version of the Compact Framework. One way is to navigate to the [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETCompactFramework] key in the registry. The other way is to run an application in the \Windows folder called cgautil.exe. These two methods will display the CF version number. Visit http://en.wikipedia.org/wiki/.net_compact_framework for a complete listing of release versions and version names. Currently, the Compact Framework versions installed in some of our mobile computers are: Handheld Model Compact Framework Version Compact Framework Name CN3(WM5) 2.0.6129.0 2.0 SP1 CN3 2.0.7045.0 2.0 SP2 CN50 2.0.7045.0 2.0 SP2 CN50(WM6.5) 3.5 70-Series 3.5.9198.0 3.5 Table 2 - Compact Framework Versions Development Comparisons PPC / WM vs. Windows CE The Pocket PC family is a specialized version of Windows CE designed primarily for Personal Information Management (PIM) devices, whereas Windows CE.NET is a much more generalized platform running a wide array of devices. The nature of the individual platforms leads to some notable differences in the way applications are developed and behave.
Application Lifecycle Management Form Size and Position Options Menus Tab Control Input Panel Non-Graphical and Console Applications Table 3 - Net Compact Framework Development Comparison Pocket PC / Windows Mobile By default applications do not have a close button. Applications designed for the Pocket PC normally remain running indefinitely to allow users to quickly move between applications. Pocket PCs always have a screen size of 240x320. All Pocket PC forms created by the.net Compact Framework occupy the entire display. Pocket PC applications include a menu on the main form, by default, with all form menus positioned at the bottom of the display. On the Pocket PC, the.net Compact Framework positions Tab Controls at the top edge of the form, filling the form from left to right, with the tabs positioned at the bottom of the control The InputPanel is a Pocket PCspecific feature, and can only be created within a Pocket PC application. The Pocket PC does not have a console window. WinCE Windows CE applications employ an application lifecycle more consistent with Windows running on the desktop, displaying the standard "minimize," "maximize" and "close" buttons on the top of the form. Windows CE has no specific screen size requirement; forms can be resized and repositioned in much the same way as forms created by the full.net Framework running on the desktop. On Windows CE.NET, each application provides its own menu. Associating a menu with a form does not have any side effects, so the decision to associate a menu with the form is left to the developer. On Windows CE.NET, Tab Controls may be sized and positioned at any location on the form. The individual tabs are positioned at the top of the control. Attempting to create an instance of the InputPanel class in a Windows CE application May result in an error. Windows CE.NET supports a console window and development of console applications. Development Languages Current languages available for application development include C++, Java, Visual Basic (VB) and C#, or C-Sharp (VB and C# are referred to as.net ). Visual Studio and Embedded Visual C++ (evc++) are the mainstream Microsoft development languages and Java is becoming more popular. Internet Explorer Mobile supports client-side JavaScript 1.5 (ECMA-262). Microsoft Visual Basic, Scripting Edition (VBScript) is not supported. In general, Internet Explorer Mobile supports the Internet Explorer 3.02 Document Object Model. Windows Mobile 6 has an updated version of Internet Explorer Mobile that includes the XML DOM and JavaScript support required to run basic AJAX applications. Development Environments There are a number of development environments available for programming Pocket PC and Windows Mobile devices. These environments help developers write application for mobile devices. Some of the more common environments include Embedded Visual C++ and Visual Studio. Here is a breakdown of development environments.
Language IDE SDK Requirements C/C++ Visual Studio 2005 Microsoft or Intermec OR SDK Required. embedded Visual C++ 4.0 with Service Pack 4 C# or VB.NET Visual Studio 2005 (recommended for developing software for Windows Mobile 5.0 and Windows CE 5.0 computers) Java Visual Studio 2008 with all Microsoft DTks Any IDE but Eclipse is recommended None None Runtime Requirements Commonly used runtime DLLs are factory loaded on Intermec Computers. Other DLLs available in Intermec Resource Kits. Microsoft.NET Compact Framework Intermec.NET class libraries (available in Intermec Resource Kits) IBM J9 Java Virtual Machine Intermec Java class libraries (available in Intermec Resource Kits) Web Any web authoring tool None Windows Mobile Internet Explorer OR Intermec Browser Table 4 - Development Environments Supported Intermec Resource Kits Data Collection Device Communications Bluetooth Mobile Printing RFID Device Mgmt Data Collection Device Communications Bluetooth Mobile Printing RFID Mobile Gadgets Device Mgmt Data Collection Device RFID Device Mgmt RFID Device Device Mgmt Software Kits Used in Development Software Development Kits These kits are also referred to as an SDK. The Microsoft Windows Mobile 5.0 SDK extends the Visual Studio 2005 development environment so that applications can be written in both Native and Managed languages. This SDK includes the necessary Headers, Libraries, and Managed reference libraries as well as code samples and an extensive Windows Mobile help file in CHM format. The Windows Mobile 6 SDK will be released in two separate SDK s a Professional version and a Standard version. These SDK s are released as refresh SDK s and adds additional documentation, sample code, header and library files, emulator images and tools to Visual Studio that let you build applications for Windows Mobile 6. Microsoft released a DTK to support the 6.5 Operating System. This Development Tool Kit adds documentation, sample code, header and library files, emulator images and tools to Visual Studio that let you build applications for Windows Mobile 6.5 and Windows Mobile 6.5.3 Intermec Developer Libraries This set of libraries are typically referred to as the IDL. This collection adds to the Microsoft SDK and provides the basic tools used to develop applications for Intermec Computers. This collection is available from the Intermec web site Download section and is downloaded in separate files called Resource Kits. There are 9 resource kits available in the IDL for development in the areas of Bluetooth, Communications, Data Collection, Device, Device Management, Mobile Gadgets, Printing, RIFD, and an Antares Migration kit. Resource kits can include SDK s, sample source and documentation to support C/C++,.NET, Java and Web development. See the Additional Information section for a link to the Download site.
WWAN Toolkit The Intermec WWAN Toolkit is used to build mobile applications that facilitate communication across cellular networks. Supporting both the GSM and CDMA standards, the kit allows for the development of applications in a global context. It works on all Intermec Mobile Computers equipped with a WWAN radio. The WWAN Toolkit consists of two APIs. The WWAN Toolkit Core API, targeted for applications that require only WWAN communication, and the Connectivity API, a smaller subset of WWAN methods that adds the capability to switch between WWAN and WLAN communication. Platform SDK s If you are developing C/C++ applications for an Intermec computer, you need to download an Intermec platform SDK or a Microsoft SDK. The APIs that provide Microsoft functionality are included in each SDK. In general, once you have installed a platform SDK, you do not need to reinstall it since changes to platform functionality rarely affect the interfaces. The table below lists Intermec computers and the corresponding platform SDK you need to download for C/C++ application development. If you need a platform SDK, download and install it before you download any Resource Kits. CN3, CN30, CK60 with Microsoft Windows Mobile 5.0 Visual Studio 2005 or 2008 Windows Mobile 5.0 SDK for Pocket PC CK60 with Windows CE ice50-ck60-a4i embedded Visual C++ 4.0 with Service Pack 4 or Visual Studio 2005 or 2008 CV30 Microsoft Windows Mobile 5.0 Visual Studio 2005 or 2008 SDK for Pocket PC CV60 with Windows CE CV60_SDK embedded Visual C++ 4.0 with Service Pack 4 or Visual Studio 2005 or 2008 CN50 Windows Mobile 6 SDK embedded Visual C++ 4.0 with Service Pack 4 or Visual Studio 2005 or 2008 70-Series devices Windows Mobile 6.5.3 DTK embedded Visual C++ 4.0 with Service Pack 4 or Visual Studio 2008 Table 5 - Platform SDKs Device Management Intermec SmartSystems Foundation The Intermec SmartSystems Foundation makes it easy to use the features built into Intermec devices whether you are taking them out of the box for the first time or supporting deployed devices. SmartSystems Foundation provides a consistent way to manage a wide variety of Intermec products including Intermec computers, printers, RFID system components, software applications, bar code scanners, and other peripheral and network devices. The SmartSystems foundation includes a console that provides a simple, comprehensive management tool for monitoring and managing the Intermec devices in your system. With SmartSystems Foundation you can place your devices into groups that better represent your system, view device status, save device configurations, reconfigure other devices using the saved configuration file, and distribute OS and application updates and files to the devices (without the use of an SD Card and screwdriver!). SmartSystems Bundle Tool is part of the SmartSystems Foundation and helps integrators, developers, or other IT personnel package their software bundles and tool bundles for use with SmartSystems Foundation. The Bundle Tool is installed as part of the SmartSystems server and can be downloaded separately and run as a stand-alone tool.
A bundle is a collection of files that is packaged so that it can be installed into the SmartSystems Server. You can use a SmartSystems bundle to distribute and install two software types: Device software (for example, a client/server application), which can be installed on SmartSystems enabled devices. SmartSystems console plug-in tools, which are device-specific applications that are used to configure or maintain SmartSystems enabled devices. More information about the SmartSystems Foundation can be obtained at Intermec web site.
WM6 New Features The Windows Mobile 6 Operating System will be delivered with a host of new features and enhancements in a lot of areas including; Messaging and collaboration Infrastructure Interoperability Security Memory card encryption using AES 128; Data can be read only on a certain device or via ActiveSync. Platform Development Remote Desktop Mobile Local and Remote Device Wipe One of the biggest improvements over Windows Mobile 5 is in the area of Security. WM6 will contain Storage card encryption, which allows encryption of data stored on external removable cards, and remote device wipe, the ability to remotely wipe the device if needed. Some of the new features in application development included the.net Compact Framework and SQL Compact Edition being installed directly in ROM, Support for AJAX, and Remote Desktop Mobile, which provides enhanced remote access to both Windows-based personal computers and servers. WM6 Naming Conventions With the introduction of Windows Mobile 6 Microsoft changed its naming conventions. This change is required to better reflect the growing handheld computer industry. Windows Mobile 5.0 and Earlier Windows Mobile 6 Corresponding WM6 SDK Windows Mobile for Pocket PC Windows Mobile Classic Professional Windows Mobile for Pocket PC Windows Mobile Professional Professional Phone Edition Windows Mobile for SmartPhone Windows Mobile Standard Standard Windows Mobile Compatibility Applications can be built that run on either Windows Mobile 5 or Windows Mobile 6 devices by using either the WM5 SDK or the WM6 SDK. Applications will run good on a WM5 device and even better on a WM6 device because of the WM6 improvements such as including the Compact Framework onto the device.
Additional Information Windows Mobile Device Protection with MSFP http://msdn2.microsoft.com/en-us/library/aa455832.aspx What s New for Developers in Windows Mobile 6 http://msdn2.microsoft.com/en-us/library/bb278115.aspx Fundamentals of Microsoft.NET Compact Framework Development for the Microsoft.NET Framework Developer http://msdn2.microsoft.com/en-us/library/aa446549.aspx Intermec Downloads Intermec Developer Library (IDL) and Platform SDKs Download http://www.intermec.com/support/downloads/search.aspx?categoryid=11&familyid=20&productnodeid=devre SOURCEKIT Intermec WWAN Toolkit Download Demo available at each Mobile Computer download site. SmartSystems Foundation Download http://home.intermec.com/eprise/main/gss/service/content/downloads/show_downloadsearchresults?prod uct=smrtsysfoundation