I want to share an ESRI/Android/Google Map business solution I came with up this week in an attempt to streamline a process needing a more efficient work flow. Background Credentials - I work for a large Government entity in the Engineers division under the umbrella of Public Works & Utilities – We are a large GIS shop running ESRI products on Enterprise systems. My concentration: Data Development and Asset Management. Responsibility’s: Maintenance on several large Data-sets with hundred’s of thousands of public records. Focus: GPS Mobile Field Data collection efforts. My latest experiment has led me to combine functional components of ArcGIS together with existing data-sets to produce a complete Map & Data package available on Android through Google Maps. By trade I do not write complete code: I am a certified GIS Professional through the GIS Institute with a BA in Geography: I work as an IT GIS specialist. Through applied learning techniques and knowing my way around ESRI software products and Android devices I’ve learned to patch together enough pieces to develop some very cool work flow processes. In the last year I have developed two stable working processes which have proved to be highly effective in both time & cost saving for our department. This blog will focus on my latest effort: Using ArcGIS to create Android compliant Google Map data-sets. This process can use Geodatabase connections, Shapefiles, HTML forms, reports, Excel, DBF’s, GPX, KMZ, and KML files. I welcome feedback and input anyone may have to offer to help refine my process. Please comment as well. Contact information is at the bottom.
Scenario: One of the many tasks our GIS central department does is manage multi-department enterprise GIS data. We create, maintain, and develop seamless data on a daily basis for over 50 entities including outside agencies. We maintain over 500 data layers in our enterprise system. My main job is to manage the field data collection for Storm Drainage infrastructure “one of the largest and most expensive assets we own” with over 200,000 Geographic features. We’re talking about a multi-million dollar investment. We have over a decade of investment into this living data-set and it changes everyday. Two departments are responsible for sending change requests to create, modify, and update through our Project management request system. The Project request application is HTML web based. My team receives on average 30 requests per month for new work to be inventoried in the field with Trimble GPS equipment. Work comes in from new construction, as Storm drainage feature updates on size change ie. removal of a bio-infiltration channel to be replaced with a drainage filter system per NPDES requirement. The work requires a full staff to handle the load. The list goes on and on.
ArcGIS/Android integration: With so many data field requests to respond to we need a way to better manage where all the work is in our jurisdiction. We’re talking about 2,000 + square miles. We purchased a fleet of Android devices consisting of Verizon Thunderbolts, and Sprints EVO4G’s for our crews to use Google Navigation to and from sites as well as the many other available data services. To see full screen shots click the image to enlarge.
1. HTML site used for receiving work orders:
2. Establish a Database Connection within ArcGIS from an outside source or use an existing spreadsheet, shapefile with a list of Geocoded address locations. Locate any data source you want to deploy on Android.
3. In this case we connect to generalgdb.*&%^$_ProjectTracker_Features, Files, Projects, Pts, RequestFeatures, and Requests direct pull from the above HTML backend database.
4. Using the Request Events table we define our search results by building a Definition Query to break down the fields of information.
5. The database connection has an unknown coordinate system at this point, so we export the table as a shapefile to contain the spatial components necessary for geo-referencing functions such as Geocoding if not already done, and exporting to other formats like KML and KMZ. android will read the final KML output. See screens below for KML display on Android after parameters are set.
6. After a shapefile is created or added from existing source, add the table into your menu layout by using the AddData button
7. At this point we add a referencing coordinate system to the newly created shapefile
8. Go into the shapefile properties and define other setup functions. Choose a new layer name if you need to, under fields make sure the Primary Display Field is chosen so it’s displayed in the final digital version of the map when is comes out in Android
9. Next choose the HTML Po-pup Tab and put a check into “Show content for this layer using the HTML Po-pup tool”, Display HTML formatting – Check “As a table of the visible fields” along with a check at the bottom for “Display coded value descriptions in all HTML content”
10. After these steps are complete go into Arc-toolbox under Conversions Tools and choose “To KML
11. Name the KML file and choose a place you can remember. Not ArcGIS actually names files in export to KMZ, Google Maps doesn’t recognize KMZ files only KML
12. Locate the KMZ file and launch within Google Earth. File will load up in plain colors , now adjust parameters in Google Earth to reflect new icon’s, and label colors.
13. Right click on “Save places as” name the file put into another folder as a KML. Open up Google Chrome, load up Google maps, Create a new map, name the map, import the KML file and you now have a real working map with full functionality for use in the field with all your information at your touchscreen
Notice in the Google Map, the form pops up which is the part you coded in from the HTML Popup tool in ArcGIS. It’s fully displayed in Google Maps and on your Android in the field giving you all the information you have if you were at your desktop.
FINAL RESULT: After map is in your Google My Maps account, pull it up on your Android Device and your ready to hit the road. The display on Android is the same information in your original HTML request, Google Earth, and Google Maps. The whole process may seem like a lot of steps, but it takes 5 minutes after you get it down. Good luck, email with questions.
Matt George for Limitless DROID
Email me at: email@example.com