Skip to content
March 20, 2007 / Steven Pousty

.NET Mobile ADF

Excellent intro with Jeff introducing the chair inspector application where team members are going around the room and collectitng information about people using the Mobile ADF.

Server developer solution for mobile applications
Supports field workflows
data viewing
feature inspection
basic data collection

Direct synchronization with ArcGIS Server
Connected and disconnected environments
Windows Mobile Development
At 9.2 purely an SDK.

On to the Feautres:
Supports multiple connectivity scenarios
Full Support of geodatabase transaction model
Small footprint and high performance
Includes GPS components, Data Sync Components, Map Display and interrogation
???What is the Device Data Store – is SQL Server mobile being used – that could be really interesting for remote data entry hybrid applications. NOPE – IT IS A BUNCH OF BIN FILES.

Targeted .NET compact Framework 2.0
Windows Mobile 5.0 with focus on the SmartPhone
PocketPC 2003, 2003 SE, CE 5.0. and Windows XP

Build mobile geodb – information and transaction model considerations
Author Mobile Map – design for environment and form factor
Publish Map Server – with mobile data access capabilities
Design Mobile Application – for form factor and envir.
Deploy Mobile Solution – provision devices
Synchronize Mobile GIS Solution – consider bandwidth and battery

Even with a simple user interface there is still going to be a training need to use the application.
There are ways to pull all the data down when first provisioning the map but it is flexible and configurable as the developer.

General coding guidelines
Multiple threaded environment – use BeginInvoke to push arguments to UI
Dispose of object that implement IDisposable – wrap inside using block
Use try…catch blocks where appropriate
Employ defensive coding practices – such as being careful when casting and not causing a crash.
Menu vs. Tool Considerations.

Maps and the Map Cache
Map component draws data from the map cache (threaded drawing)
Map Cache stores map data on device
Map Cache synchronizes updates with Server
Map supports markup/graphics on Display
Map supports drawing of custom layers
Map Rotation supported

Data extraction – use MapCache Extractor to create Map Caches on your desktop. Use Request_Completed event to monitor synch requests – probably want to do this on antoher thread. Use the State and Notification Broker API and about how connected you are – let’s you poll about what kind of connection you have ActiveSync versus EDGE, and then choose to synch or not. This would be helpful for smart data synching when it would be less expensive.

VS2005 demo – drag and drop of controls in real time – The map cache points to a web service endpoint – you can also say where the data will be stored for the map cache

???How do you change the storage location once you deploy to the device?

GPS Components – Serial and File GPS – the file is for simulation/going through a set of file points. There is also a GPS Display which lets you show where you are are. There are a lot of great design time components to make things look pretty.

There is ADO.NET integration – spatial and attribute queries
The FeatureLayers and some other layer are actuall ADO.NET compliant so you interact with them like any other ADO.NET component.

Editing Features – edits can be performed regardless of connection status
Geometry edits – sketch map action and components for points, lines, and polygons with snapping for feauture layers.
Demo of editing – pretty darn sweet.
Here is one the tradeoffs as I see it:

Custom layers – provides a way to fure in custom data feeds into your map cache, such as weather layers or real time traffic feeds. They are showing the live traffic demo. Allows you to write you own live local or google local for the cell phone.
They are running out of time so things are going quick now

Future Direction:
Improve performance for large base maps
Improve editing – doesn’t work on smartphone or use GPS
Add a mapGraphicsLayer for redlining
Add Web Services security – token based to secure the pipe.

This has functionality similar to ArcPad but to get the value added you need a license for Server. But going that route also allows you to program in VB.NET or C# rather than the heinous world of VBScript or JScript for ArcPad. So if you can afford the Advanced server license I think this would great to have. I think I am going to try and talk to ArcPAD people and see what they have to say.

Overall a good talk with interesting example. Where or where are my EDN DVDs



Leave a Comment
  1. hinda / Apr 23 2008 1:33 pm

    thanks for all information, but I would ask you about the synchronisation with server? how can I send the data and the updates to the server?
    I can’t undesrstand this topic …
    Please can you tell me how?


  1. ѕcrарраd By Jithen Singh : Developer Summit d1, Updates!

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: