We’ve been building mobile ArcGIS Online apps for both online and offline editing. One important requirement has been image attachments. But one area we see as being equally as important are audio and video files. So providing richer data and attaching that in ArcGIS Online to a feature. The video below shows attaching in offline mode an mp3 audio and wmv video file to a feature and uploading the data to a hosted feature service in ArcGIS Online.
Feel free to contact us for more information firstname.lastname@example.org
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 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:
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.
ArcGIS Online is a major step forward for mobile ArcGIS. True its not just targeted at mobile, but it has and will make the lives of mobile developers and their clients considerably easier. Why? Let’s make a list:
1) Single endpoint, or webmap to load, in a mobile viewer
2) Easy for users to prepare and publish their data.
3) Shapefiles published to ArcGIS online are converted to Feature layers and pushed to the mobile ArcGIS viewer within the webmap itself.
4) Other data sources can be easily published in ArcGIS online, then rendered in a mobile map viewer.
Those are just some of the advantages.
We’ve just released ‘GeoMobile for ArcGIS Online’ a free mobile app which allows users to load on a mobile tablet, their own published ArcGIS Online webmaps. We designed it to be extensible. So it goes beyond the excellent ESRI mobile widget, in that we can add functionality based on user requirements.
We are approached regularly about offline ArcGIS. Thus the somewhat confusing title of this blog post ArcGIS Online Offline! Here, we will discuss using GeoMobile for ArcGIS Online to access your webmap in an offline mode. The approach we demonstrate could easily be used in our other free mobile app GeoMobile for ArcGIS Server.
Before we describe the offline widget in more detail, here is a demo:
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.
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.
You might be wondering how you access GIS layers when your mobile has no Wi-FI access. Well wait no more, the solution is at hand. The demo below shows ArcGIS being used offline. Before you open source folk get upset, this solution could also be applied to a Geoserver/Openlayers/OpenScales solution. The app shows storage of base map tiles and a shapefile on the actual mobile device. In offline mode, we show loading this data. Very cool. Thanks a million to Mansour at ESRI for helping us move this forward. See the application demo in the link below: