We have been developing mobile ArcGIS online maps for some time. Editing has been at the forefront of our recent work. Many of our clients are looking for tools which allow mobile workers to edit features (add, edit, delete) while in the field. Disconnected mode, where the mobile user has no wi-fi connectivity, is an additional area of interest. To date there are no robust offline solutions in place. ESRI have plans for native targeted releases next year. Our key interest is in cross platform, or a single code base which runs on multiple devices – iOS, Android etc. We turned to the much maligned Mobile Flex for a solution. Actually I should say, the now less appreciated Mobile Flex – but we still love it!
The next two sections are a very rough starter for developers trying to do what we show in the video; online offline editing in ArcGIS online. More hints than a step by step guide. But hey, it would be less fun if we gave the game away. Actually you would not understand it as well if we held your hand completely. For those just wondering about online offline editing in ArcGIS online jump to the video.
Mobile ArcGIS Online and Feature Layers
Not all Feature Layers are the same in the ArcGIS Online world. It took us a while to realise this was the case. For example. When logged into your ArcGIS online account create a new map and add, from file, a shapefile. You will see your shapefile appear on top of the basemap, it has actually been converted to a Feature Layer. Now you can set the layer to editable, and add, edit and delete features. By selecting save these changes will be made permanent. But, this is not a hosted Feature Layer. Meaning if you want to edit this layer in your custom mobile application (see the video later in this post for what we mean by ‘custom mobile application’), no joy.
To do this you’ll need to set up hosted feature layers (plural) in ArcMap or individually in your ArcGIS online account. Include these in a new published map and you are off to the races. Oh and you’ll need to also set these hosted Feature Layers to editable. Now your custom mobile editing ArcGIS online application will be truly editable.
Feature Layers and Feature Collections
Ok, that’s the first fyi here. Let’s now talk about another twist in the Feature Layers (let’s use FL for short) world. Now a standard FL comes with a group of interactive graphics (think of them as images). These are the features you see on the map. Suppose we now want to go offline. We’d like to edit a FL while disconnected, then have these changes magically be saved to the server. You’ll need to copy the FL to the mobile device. To do this you’ll need to do a little trickery while online. Read about FeatureCollections. There’s not a tonne of info at the minute. But you’ll need to generate a FeatureCollection (gonna use FC here..) for the FL of editing interest before saving it to the mobile device. Are we talking double dutch? When you dig deeper you’ll get it.
In the video below we take an editable FL from ESRI, generated an FC for that layer and store it on the mobile device. We watch each edit – add, delete, update – and store the new/altered graphic after each applyedits call. When back online we then fire these graphics back at the server FL again using applyedits.
Demo of Online/Offline ArcGIS Online
Nerdy stuff done. Here is an end to end demo of mobile editing in ArcGIS online. So as you move from hotspots to wi-fi disconnected, this demo shows how you’ll edit away without concern.