Deploying your applications to Windows Mobile devices
Deploying to mobile devices
Deploying applications to mobile devices can be performed in several ways and depend on the type of application and numbers of deployments. Smart device applications are deployed to devices via cabinet (CAB) files, which are created from deployment projects in Visual Studio. CAB files are the Windows equivalent of setup and .msi files for devices. These can be delivered to the device through a number of means including ActiveSync, simple file transfer, and device memory cards. This topic provides an overview and information relevant to deploying smart device mobile applications. For more in depth information on device deployment, see the Microsoft documents for more options.
Deploying the ArcGIS runtime library for Windows Mobile
Deploying the ArcGIS runtime library for Windows Mobile has been simplified by installing the runtime CAB file that's included in the ArcGIS Runtime for Windows Mobile setup. The CAB file contains all the necessary files that are required to run ArcGIS for Windows Mobile-based applications. A CAB file is similar to a Zip file in that it contains a compressed version of the files. It's more than a ZIP file though, since it includes additional installation information. To deploy the runtime using the CAB file, copy the CAB file into your device, then select it from the file explorer on the device to launch the installation. Once the installation is completed, you're ready to deploy your own ArcGIS for Windows Mobile-based application.
The following are common questions related to deploying the ArcGIS runtime library for Windows Mobile:
- Q. How do I get the ArcGIS for Windows Mobile Runtime CAB file?
The ArcGIS for Windows Mobile Runtime CAB file is installed on your development computer when you install the ArcGIS Runtime for Windows Mobile setup.
- Q. Where is the ArcGIS for Windows Mobile Runtime CAB file?
The ArcGIS for Windows Mobile Runtime CAB file is in your <install folder>\ArcGIS SDKs\Windows Mobile\Install. The name of the CAB file is AGMRuntime.cab.
- Q. What does the CAB file contain?
The CAB file contains managed assembly ESRI.ArcGIS.Mobile.dll and ESRI.ArcGIS.Mobile.Client.dll, six native DLLs (ESRIMobileCore.dll, ESRI.ARCGIS.Runtime.PE.dll, ESRI.ArcGIS.Runtime.Geometry.dll, ESRI.ArcGIS.Runtime.SG.dll, ESRIMobileGPS.dll, and ESRIMobileSdc.dll), and information on how to install them.
- Q. Where do the installed files go on the mobile device?
The AGMRuntime.cab file installs files to \Windows and \Program Files.
Windows Mobile 5 application security considerations
All Windows Mobile 5-based devices, including Pocket PC and smartphones, implement security policies that determine whether an application is allowed to run and, if allowed, with what level of trust. Smart device applications built with the ArcGIS for Windows Mobile SDK for deployment on Windows Mobile 5 devices require full trust, as they create and interact with a file-based cache and must include an appropriate security certificate.
If you do not sign your application with a full trust or privileged certificate, your application will either not run, on smartphones for example, or may display a pop-up dialog box on some Pocket PCs asking the user to trust the application. Neither case is desirable for your users.
It is your responsibility to obtain a full trust privileged certificate and sign your smart device project. If you're releasing an application to the public, consider participating in the Microsoft Mobile2Market program to certify your application. For more information on security, signing your projects, and certification see the MSDN topic Windows Mobile 5.0 Application Security.
Creating and deploying smart device CAB files
Creating CAB files for smart device projects is a straightforward process. Follow the steps for creating device CAB Files with Visual Studio (http://msdn.microsoft.com/en-us/library/3h8ff753(v=vs.90).aspx). In addition to the project output, you need to add the native smart device mobile SDK libraries ESRIMobileCore.dll, ESRI.ARCGIS.Runtime.PE.dll, ESRI.ArcGIS.Runtime.Geometry.dll, ESRI.ArcGIS.Runtime.SG.dll, ESRIMobileGPS.dll, and ESRIMobileSdc.dll to the deployment project. The native libraries are located under your install location.
Once the CAB file is generated, you have to transfer it to the device and run it to install the application. You can transfer the CAB file a number of ways including file copy when the device is docked, through ActiveSync or Windows Mobile Device Center, or by providing the CAB file on a memory card.
Signed CAB files
The ArcGIS Mobile CAB file is signed so that devices can be assured of it coming from a trusted source. If you're going to sign your CAB file that contains other CAB files (for example ArcGIS Mobile Runtime), all the CAB files will be signed using the same signature, as Microsoft only allows one signature on a file. The signing process uses the same code-signing certificate to sign the CAB and all the files within the CAB. For more information about signing CAB files, see the Verisign Mobile-to-Market (M2M) signing procedure for adding M2M certificate to your CAB files.
Device Security Configuration Manager
The Device Security Configuration Manager is a tool that allows you to examine and provision security configurations for your mobile device. The standard security configuration for your devices comes in one of the configurations described below. Setting different security configurations will have different effects when you are installing ArcGIS Runtime for Windows Mobile CAB and your own application.
- Locked—If your device is set to locked, you cannot install ArcGIS Runtime for Windows Mobile CAB or any other installers. Only the applications signed by the OEM are allowed to run.
- One-Tier Mobile2Market Locked—ArcGIS Runtime for Windows Mobile CAB is signed with the M2M certificate; consequently, you can run the install without issue. For your own application, if the CAB is not signed, neither you nor your user can launch the install.
- One-Tier Prompt —You can run ArcGIS Runtime for Windows Mobile CAB installer without issue. For your own application, if it is not signed, an unknown publisher prompt appears that you will have to accept before installing your application.
- Two-Tier Mobile2Market Locked—You can install ArcGIS Runtime for Windows Mobile without issue. For your own application, if it is not signed, you cannot install them. Currently, two-tier support is only available in Windows Mobile 5 Smartphone Edition and Windows Mobile 6 Classic Edition.
- Two-Tier Prompt—You can install ArcGIS Runtime for Windows Mobile. For your own application, if it is not signed, an unknown publisher prompt appears that you must accept to install your application. In two-tier, if the application is signed with a certificate in Privilege Certificate Store, it will run as "Privileged". If the application is signed with a certificate in Normal Certificate Store, it will run as "Normal". Currently, two-tier support is only available in Windows Mobile 5 Smartphone Edition and Windows Mobile 6 Classic Edition.
- Security Off—Your devices can run any installations when the security is set to off. This includes ArcGIS Runtime for Windows Mobile, your own CAB installer (signed or unsigned), or any other third party installer (signed or unsigned). However, setting Security Off on your device has risks when you're not aware of potential threats caused by malware from unknown source.
For more information about Device Security Configuration Manager and different device security configuration settings, see the Microsoft Security Configuration Manager for Windows Mobile topics.
The following list contains online resources for deployment and device security. The resources are provided for your convenience when you're working on deploying your mobile applications.