What changed from 9.3 to 10.0.
The ArcGIS for Windows Mobile system has grown in many ways for the new release. There are new datasources, expanded spatial reference, new webservices, opportunities to customize the mobile application, and new developer platforms.
New data sources
At 9.3 the concept of a basemap was introduced to improve drawing performance, and provide additional map data support. With this release, the basemap feature has been expanded to include:
- Support for many new data formats
- Stored data - basemap data that is saved and accessed as files on the device's storage, such as the Streetmap data
- Dynamic data - data that is accessed as a web service that is not saved permanently onto the devices' storage, like the ArcGIS Online MapService
At 10.0, the new type of stored basemap is called Cached Tile basemap, which is created as a series of tile bitmaps which are drawn together like tiles on a floor. By having different groups of tiles for each desired map scale, the display can re-draw quickly, but only at the pre-set scales. The ArcGIS Runtime SDK for Windows Mobile has a new type of maplayer which is used to display this data on the mapcontrol.
Library changes
In ArcGIS for Windows Mobile 10.0, a new spatial reference and GPS library are included. The Spatial Reference library has been enhanced to support converting from one spatial reference to another. While the ability to display map data in many different spatial references was previously available, there was no way to perform conversions. The engine supports both Windows and Windows CE operation system. The engine was ported over from ArcGIS desktop and it was the same engine used to support ArcGIS spatial reference system. There are two files, one is for Windows and one is for Windows CE. The spatial reference engine for Windows can be found in \ArcGIS\Bin\ESRIMobilePE.dll while the spatial reference engine for Windows CE is located in \ArcGIS\DotNet\WindowsCE\ESRIMobilePE.dll. The library is a native dll. It is accessed through SpatialReference class.
The GPSlibrary has been replaced with a new one written as a native library.
New stand-alone product install
At 10.0, ArcGIS Mobile is no longer part of the ArcGIS Server install, you can install and uninstall ArcGIS for Windows Mobile using its own setup. This allows for a focused setup process and a much faster install.
Integrated development environment changes
A new developer component, TokenCredenial, allows developers to add token based security to their mobileservice during development. Support for the WPF development environment has been added to allow developers to use this new environment. There is a new namespace, ESRI.ArcGIS.Mobile.WPF, which provides controls to develop applications in this environment .
New functionality added
The Mobile assembly has been expanded with classes to leverage ArcGISServices. The support for SDCdata has been expanded to make this datasource a more useful part of the mobile map. The addition of renderers and datasets\datarows allow this dataformat to be used in queries.
New developer opportunities
The ability to customize the out-of the box applications provides a new opportunity for developers. The SDK can be used to write extensions or tasks that will plug into the mobile applications to provide additional functionality or tailor the application to the client's needs.
New namespaces
- ESRI.ArcGIS.Mobile.WPF has been added to provide developer controls for the WPF framework.
- ESRI.ArcGIS.Mobile.Exceptions has been added to organize the exceptions raised in the Mobile SDK.
- ESRI.ArcGIS.Mobile.DataProducts.RasterData has been added for classes representing data in raster formats.
- ESRI.ArcGIS.Mobile.DataProducts.StreetMapData has been added to replace the SDCData namespace.
- ESRI.ArcGIS.Mobile.WebServices.ArcGISServices.MapServices has been added to provide access to dynamic mapServices.
- ESRI.ArcGIS.Mobile.SdcData has been marked obsolete and replaced with DataProducts.StreetMapData.
New GPS features and improvements
For GPS components the new rewritten library contains the same functionality, but improves the linkage between the GPS namespace classes and the GPS receiver. New classes have been added to provide built in tools for GPS Construction using GPSAveraging or GPSStreaming. Another improvement for the GPSConnections and GPSDisplay is the implementation of PropertyChanged Event. This allows developers to catch individual property changes instead of generic GPSChanged types, which only happen when a new sentence is received.
For developers wishing to extend the GPS functionality, we have unsealed the GPSDisplay and Satellite classes. Now you can subclass these to add your own functionality, while leveraging our base features, instead of writing your own class completely.