Our work with mobile ArcGIS Online and disconnected or offline mode continues. The most recent addition we made to the mobile app was attachments. Those clever people at Esri have integrated attachments – images, video, audio – into feature layers/services. A very nice integration given mobile devices ability to capture photos, videos and audio. So we can use the camera on the mobile device for example, to take a picture of feature and attach that to what is stored in the ArcGIS service for that feature. Adding this functionality while in online mode we discussed in our last post. Doing the same while offline was a little more tricky. But after some late nights we managed to add offline attachments to the app. The demo below shows this in action:
Mobile ArcGIS – Demo of Adding Attachments when Offline
We’ve just made some updates to our online/offline mobile editing app. As mentioned in a previous blog post, the ability to attach photos, audio files and video to a feature are all now possible in ArcGIS Online. After setting up the hosted Feature Service in ArcGIS Online and enabling attachments, we extended our mobile editing app to include that functionality. See the demo below:
Attaching Images to ArcGIS Online Features on an Android Tablet
We continue our work with mobile online and offline editing. At present our focus is on ArcGIS data in Santa Clara, California. Now editable ArcGIS data needs to served as feature layers from a Feature Server. Data which is served from a MapServer instance of ArcGIS server is largely for visualization. In the video below we have set up a web map in ArcGIS Online. We have published to this web map MapServer data served by ArcGIS Server, and an editable feature service hosted from ArcGIS Online. So a combination of editable and non-editable layers. The video shows the web map running in our mobile app on an Android tablet. We demonstrate editing layers in offline mode, then updating the hosted feature service when back online:
We were impressed by the work UDOT are doing with ArcGIS Online. It was great to see them presenting at the Esri User Conference in 2012. Their effort forms a part of the AASHTO initiative.
We’ve been working closely with Region 6 of the Idaho Transportation Dept, developing a mobile application which will form part of their IPLAN project. So transportation is an important part of our own work with mobile and ArcGIS Online. One of our key areas of focus has been to build mobile apps which provide the ability to visualize ArcGIS Online web maps and edit layers in both online and offline modes. We thought it might be interesting to test data from UDOT in a mobile editing application. In this example we focused on milepost data.
Below we walk through the simple steps to use this data. We include first a video of the running application:
One of the many nice things about ArcGIS Online, is the ability to host Web App templates on your own server. We thought is worth walking through he steps of how this is done.
Step 1 – Log into your ArcGIS Online account and publish a web map
Our previous blog entry showed the initial steps in working with mobile ArcGIS when offline. We ended the post with “whats next? Offline Feature layers and Offline editing”. And that is the topic of this blog post.
As we have mentioned before as a company our focus is mobile location technology. GIS, and specifically ArcGIS, is an important part of this work. We are also advocates of open source software. Now the so called ‘elephant in the room’ of mobile GIS is offline. Everybody wants it, but there remains no practical solution. Both ESRI and Google have discussed rolling out offline solutions. But nothing is yet in place, at least in published API’s.
We are regularly approached about disconnected mobile maps and offline GIS. Its an itch we started to scratch a while ago. Our goal was initially to put in place a solution in the ArcGIS world, upon which we could also base an open source solution. ESRI, and in particular Mansour Raad, have been a big help in moving this work forward. We now have an end to end solution for working with mobile ArcGIS while offline.
Before we describe the work, here is a video which shows an ArcGIS Online webmap being takes offline; that is basemap, feature layers and editing.
Offline or disconnected mode is one of the most in demand client and potential client requests we receive. And yet the main spatial solution providers have only made small steps in this direction. Chatting with ESRI, offline ArcGIS is on their roadmap, but no major releases are planned in the near future. Our interest is cross-platform solutions. So recent iOS and Android specific announcements from the likes of Google, though very interesting, do not serve our clients well.
It was time for us to look into our own solution. We broke down the problem into manageable chunks, then conferred with Mansour at ESRI on the details. Let’s discuss at a high level these pieces.
Offline versus Online Mode
In code we can detect if a mobile device has online connectivity. If it does reach out over the network for map and server functionality. If offline look locally, to the device itself, for resources.
Local Storage
Mobile devices have varying amounts of local storage. They also come with so called lite databases. In offline mode we take advantage of these local resources.
Offline ArcGIS Visualization – Tile Packages
Let’s imagine we have an ArcGIS Online web map we wish to view on our mobile in disconnected mode. Using ArcGIS 10.1 we can now generate a tile package of the layers used in the web map. These .tpk files vary in size, we need to be careful when generating these packages, particularly thinking about the capacity of the mobile device targeted for the mobile ArcGIS app. But once the tile package has been generated this need be stored on the mobile device. Note, tile packages which include base map tiles will need agreement with ESRI since there are various licensing agreements attached to the source of these base tiles.
No doubt the most frequent approach we get for the mobile ArcGIS apps we develop are offline or disconnected workflows. Clients want both to be able to visualize basemaps and their layers when out of wi-fi range, and offline editing; new feature additions, deletions and attribute edits.
ArcGIS 10.1 gives us tile packages (.tpk) so we can store tile pyramids locally on the device. Mansour has a nice example showing how to access basemap tiles using a tpk in offline mode on his blog.
The real challenge is offline editing. ESRI introduced Feature Server with Feature layers in ArcGIS 10, which work nicely in online mode. In April they released an Online-Offline Editing Sample using their iOS api. They include in their notes supporting the sample:
“For the sake of simplicity, the sample ….only allows you to add new features when the application is offline, not modify or delete existing features.”
Now there is the real challenge, what they have left out of the sample.