Taking your maps offline with Tile Package Creator

21948
30
01-30-2017 10:56 PM
IsmaelChivite
Esri Notable Contributor
13 30 21.9K
This blog post outlines a simple workflow to setup offline basemaps in Survey123 for ArcGIS with the recently released Esri Labs Tile Package Kreator tool.  Our Prepare basemaps for offline use—Survey123 for ArcGIS | ArcGIS help topic describes at length all the different options available. I strongly recommend that you have a look at the documentation to complement anything you may learn in this post.
 
The purpose of setting up offline basemaps in Survey123 for ArcGIS is to enable field users to navigate their maps even when working disconnected from a network. By default, surveys include a predefined collection of online basemaps. While you will still be able to use Survey123 in disconnected mode, by default the map preview will disappear when you go offline.  That is exactly why you want to configure your maps for offline use: so you can keep using your maps while not on a network.  Even if your mobile device has good cell coverage, you may want to configure your basemaps offline to avoid data transfer fees.
 

1) Creating Tile Package files with Tile Package Kreator

 
Tile Package (.tpk) is an Esri file format for delivering rasterized maps for offline use in ArcGIS applications. Tile Packages can be created from ArcGIS Desktop, but a new tool recently released under Esri Labs may fit your needs and simplify the process.  This tool is called Tile Package Kreator and is available in the ArcGIS Marketplace.
 

Esri Labs projects are developed by Esri employees and are inspired by our interactions with ArcGIS users like you. Esri Labs projects are free to use but are not official Esri products. These projects do not go through the rigorous software development cycle so they are not holistically tested, documented or supported by Esri technical support.

 Here are some basic  steps to get started with Tile Package Kreator:
.
  1. Download Tile Package Kreator from the ArcGIS Marketplace.
  1. Login with your ArcGIS Online credentials (sorry, no support for ArcGIS Enterprise just yet).
  1. Select Create a new Tile Package. A list of available basemaps from which you can create your Tile Packages will be now presented. This list will show all tiled services shared with you on which the exportTiles operation is enabled.
  1. Select a basemap from which you want to create a new Tile Package.
  1. Define your area of interest. This can be accomplished by either drawing a rectangle or defining a path and distance.  Try to keep your area of interest as tight as you can because the larger the area, the larger the output file will be. The path and distance option is pretty handy in cases where your area of interest follows a linear infrastructure (a pipeline or road for example), coastline or river.
  1. Set the number of zoom levels. This will determine the maximum level of detail in your offline map. The more  zoom levels, the bigger the file will be, but also the more detail field users will observe.
  1. Set the name of the output file.
  1. Choose to save the file locally. Kreator can upload output Tile Packages directly to your ArcGIS Online account, but in this case we will want to save the file locally.
  1. Click on Create Tile Package to initiate the process. Tile Package Kreation will happen asynchronously, so you can go back and start other tasks.  You can always look at the tasks you invoked in the past by selecting the History option in the top-right corner of Tile Package Kreator.
 
Tile Packages can get big pretty quickly so you will want to be careful when defining the area of interest and zoom levels. Tile Package Kreator can estimate the final size of your Tile Package when you select a rectangular extent. You will see the size estimate update as  you change the size of the area of interest or number of details.  Typically, all ArcGIS tiled services are configured with a threshold that defines the maximum number of  tiles that can be created from the service. This threshold will limit the total area and zoom levels you can extract.
 
Technically, a Tile Package file is basically a compressed file so you can change its extension to .zip to look at its  contents. You will observe that within the file there are a bunch of images and json and xml files defining the projection and tiling schema.
 

2) Configuring your own survey with a Tile Package

 
The easiest way to associate a Tile Package with your own survey is to drop the .tpk file into the  media folder of your survey.
.
  1. Open Survey123 Connect and select your survey
  1. Open the survey file directory by clicking on the folder icon in the left vertical toolbar in Connect.
  1. Copy one or more .tpk files into the media folder of your survey
  1. Publish your survey to ArcGIS (either ArcGIS Online or ArcGIS Enterprise)

Now that your Tile Package is part of the survey, you are guaranteed that any user who downloads the survey will  also have access to the offline basemap. There is nothing the user needs to do, other than selecting the basemap that he or she wants to use.
 

3) Using the offline basemap in the Survey123 field app

 
Next you will open the Survey123 field app in your own device and download the survey. Along with it, the offline basemap will be downloaded. To use the offline basemap, simply tap on a geopoint question. Once you have the map at full display, use the top-right menu to expand the list of available maps and select the offline map which will be by default be shown last.
 

Common questions:

 
Why are basemaps created with Tile Package Kreator always labeled as 'Layers' in the Survey123 field app?
You will notice that despite the name given to your Tile Package, the Survey123 field app will always label your offline basemap as 'Layers' in the basemap switcher. To fix this:
.
  1. Once you have copied the Tile Package file into the media folder, change the extension of the file from .tpk to .zip so you can open its contents.
  2. Browse for the iteminfo.xml file within the esriinfo directory and set the <title> element to the label you want to be used. For example, if you want the title to be Esri Campus Imagery, change edit the <title>Layers</title> tag to: <title>Esri Campus Imagery</title>
  3. Save the iteminfo.xml file and change the extension of the .zip file back to .tpk so you can publish the survey aga

I have multiple groups of people working in the field, each in its own area. If I create a Tile Package  to cover all the areas, its size is too big. How can I handle this?

You can publish multiple surveys each with its associated offline basemap.

.
  1. Create a Tile Package for each area you want to cover

  2. Publish one survey per area and associate each survey with its corresponding Tile Package. Configure all surveys to work against the same feature service, so all data submitted is merged into a single feature service.

  3. Have field users download surveys corresponding to the areas they are going to work on.

Can I control the default basemap shown in the map?  What about reducing the number of basemaps in the list?

You can take full control over the list of basemaps presented to users in the  survey. For example, you can choose to only show the offline basemaps, or to drop or add additional basemaps to the list. You can also control which basemap will be selected by default. The Prepare basemaps for offline use—Survey123 for ArcGIS | ArcGIS help topic describes these settings at length these.

Since Tile Package Kreator is not an Esri product, how can I submit enhancement requests and issues?

Tile  Package Kreator is an open source project. You can submit enhancement requests, issues and even contribute to the source code through Github.

Is Tile Package Kreator supported by Esri?

No. You need to refer to its Github repo.

Can I use Tile Packages created in ArcGIS Desktop with Survey123?

Yes.

Can I use Tile Packages in Survey123 in a projection other than Web Mercator Auxiliary Sphere?

No.

Is Esri planning to add support for Vector Tiles in Survey123 for ArcGIS?

Vector Tile support is sitting in our back-log at the moment, although we do not have a specific deadline at the moment for it.

30 Comments
ZoltanKovacs4
New Contributor II

This is a great tool, I could've used it a long time ago when I needed something like this.

The app reports that there are updates available (see screenshot below), but no matter which one I click on it takes me to the v1.0.87 download page (same link as above in the article). Am I missing something or this is a bug?

IsmaelChivite
Esri Notable Contributor

Hi Zoltan. The upgrade option is being still worked out.  An update to Tile Package Kreator will be made available in the next few days. We hope to get the upgrade option straight  soon, although a fix to the upgrade tool may come in other upcoming releases.

ZoltanKovacs4
New Contributor II

Ismael

Thanks for letting me know. I was wondering whether it was me doing something silly. 🙂

DougBrowning
MVP Esteemed Contributor

Do you know what command it uses?  Create Tile Package or Manage/Export.  Since there are bugs in some of these it would be nice to know.

Thanks

JamesTedrick
Esri Esteemed Contributor

Hi Doug,

The Tile Package Kreator tool doesn't use the ArcGIS Desktop tools - it works against the Export Tiles capability of a map service.

IsmaelChivite
Esri Notable Contributor

Hi Doug, Tile Package Kreator uses the exportTiles REST API operation on existing Tiled Services. You can access the source code of the app GitHub - Esri/TilePackageKreator: Tile Package Kreator  Specifically, the exportTiles logic is within TilePackageExport.qml file

JasonSawle
Esri Contributor

Hi Ismael

It looks like you can only take your maps offline using the Survey123 Connect route. Can you take maps offline with the Survey123 Web route? If not, are there plans for this? Thanks.

zkovacs
Occasional Contributor III

Hi Jason, it's been a long time. 🙂

As long as the .tpk is sideloaded on the device it does not matter whether the survey was created with Survey123 Connect or via the Survey123 Web designer. (Just tested it.) If you want to publish the .tpk with your survey to AGOL as described above, it's only with Connect for now I'm afraid.

I hope this helps.

Zoltan

JasonSawle
Esri Contributor

Hi Zoltan, how are things!?

Thanks for the reply. Does the TPK have to be in particular location on a device to work?

Jason

zkovacs
Occasional Contributor III

I'm good thanks.

Have a look at this post and the comments if the device is iOS. 🙂

Zoltan

EmilyLee2
New Contributor III

Tile Package Kreator seems great and easy to use. I was able to create a tpk file of a basemap successfully into a local drive, then copied the file to my Android tablet's "ArcGIS_Collector" folder.  But from the Collector app, I can't download the map to use.  It just hangs there and wouldn't finish downloading.  Any idea please?

JamesTedrick
Esri Esteemed Contributor

Hi Emily, 

The copying of the basemap shouldn't be interfering with the downloading of the web map for editing.  You change the background map in the map view.  You might have some issues if you're trying to download additional basemaps or large amounts of data for offline work and you're running out of space on the device.

EmilyLee2
New Contributor III

Thank you, James.

After leaving the download overnight, I think the basemap finally got downloaded (343,420 KB).  Then I'm a little bit confused there, because it's asked me to download again.  So, this time, I chose a smaller area for testing. But I guess it meant for the real "work area"?  But I thought downloaded the side-loaded basemap was the "work area".  Anyhow, I then tried to collect a feature outside of it because my real work area is actually the entire basemap area I just side-loaded and downloaded.  But then it says "Feature is outside of your work area" as below shown:  

I'm hesitate to remove the map under Manage > Remove map, because that would remove the basemap that took me overnight and several tries to download, correct?  How do I re-select the blue box/work area without deleting my side-loaded/downloaded basemap?

Sorry, maybe it should have been more a Collector question.  Not sure if Survey123 needs the similar workflow for downloading basemap/working area in order to work offline.

Thank you very much again!

JamesTedrick
Esri Esteemed Contributor

Hi Emily, 

Yes, at this point it's more a https://community.esri.com/community/gis/applications/collector-for-arcgis?sr=search&searchId=bddbd1...‌ question at this point.  Survey123 doesn't have an on-device offline maps creation capability.

EmilyLee2
New Contributor III

I see.  Thank you, James. 

zkovacs
Occasional Contributor III

Emily

Are you sure that you actually have selected the side-loaded tile package to take your survey offline? By the sound of it you've selected an AGOL basemap to be downloaded, otherwise the only reason for downloading 300MB+ data for the survey would be if you had loads of features (with attributes and attachments) in your underlying Feature Service. If you use a side-loaded basemap or a previously downloaded basemap, you don't have to specify map detail (eg. zoom level) before downloading the survey. (If I remember right, these will be listed at the top of the basemap list - under 'Choose a basemap' and the small text will say 'on device' - when taking the survey offline.

I hope this helps.

EmilyLee2
New Contributor III

Thank you, Zoltan.  I'm having problem downloading the basemap offline from Collector, so I'm trying the Tile Package Kreator to side-load the Esri streets basemap to the device instead.  I was able to successfully create and side-load the basemap, just not able to open it up and use it on Collector yet... I think you're right, Survey123 might have a different, simpler workflow to take map offline than Collector.  I might switch my project to Survey123 later on.  But in the meanwhile, I have opened a tech support case about it.  So, we'll see. Thank you!

zkovacs
Occasional Contributor III

No problem. Not sure what the issue is, I had no problems with using tile packages created by Kreator in Collector...  I hope it will be sorted soon. 🙂

AsmaNKHILI
New Contributor III

Hi Ismael, 

I tried to use Tile Package Kreator with a tpk that i created from ArcGIS Pro....when i change default map in survey 123, resolution of my tile image is changed so i cannot use it in Survey123 because quality of image....

JamesTedrick
Esri Esteemed Contributor

Hi Asma,

I'm to sure why you would Tile Package Kreator with a tile package from ArcGIS Pro- it is designed to work with Tile Services in you ArcGIS Online account.  Regardless, what were the settings used to generate the initial tile package?

NDA-GISGhana
New Contributor III

Please I am finding it difficult changing my .tpk to .zip because of that i cannot view my content to  enable me see my "iteminfo.xml". I want to change my layers name to suit my interest. Thank you

JamesTedrick
Esri Esteemed Contributor

TPKs aren't zip files, they are 7-zip (http://7-zip.org ) files.  You will need to use 7-zip tools to manipulate them.

DougBrowning
MVP Esteemed Contributor

So that must be why I can always unzip them using windows but can never zip them back up and work.

I do have 7zip.  Is there any help that tells what the settings are for 7zip to work with TPKs (like what compression method).

thanks

JamesTedrick
Esri Esteemed Contributor

For compression settings, we don't have official documentation (it is preferable to use the geoprocessing tools to create the package), but you can refer to arcgis server - How to correctly uncompress and re-compress an msd file using 7zip from command line... 

NDA-GISGhana
New Contributor III

Thank you for the support. It really worked

RebeccaFuda
New Contributor III

I am having trouble with renaming my offline basemap.  When I follow the directions in Ismael's initial post under "Common questions", I get an "Error unpacking" message when trying to download my survey.  To be clear, I changed the file extension from .tpk to .zip, extracted the files from the zip folder, edited the title in the .xml file, then sent the folder back to a zipped folder and changed the file extension back to .tpk.  After republishing the survey, I got an "Error unpacking" message when trying to download the new version of the service onto my phone.

I also tried to edit the title using 7zip.  I simply right-clicked the .xml file in 7zip, chose Edit, edited the title and saved the file.  When I republished the survey, the tile package completely disappeared from my offline maps.

If anyone can provide step-by-step directions for renaming offline basemaps, I would greatly appreciate it.

JamesTedrick
Esri Esteemed Contributor

Hi Rebecca,

It's best to do the editing without fully unzipping the package- there are particular zip settings that appear to be non-default.  The recommended procedure would be to enter the zip file through an zip file explorer (if you change the extension .zip, Windows Explorer will allow you to do this) and either edit in place the .xml file or make a copy of it outside the package, update it, and recopy it into to the zip file.

CarlHolt1
Occasional Contributor III

I'm just having a tough figuring out if I can create a map, with feature services, and then use that to create Tile Package, via TPK? I'm trying to remember back to the session at UC.

JamesTedrick
Esri Esteemed Contributor

Hi Carl,

Tile Package Kreator works with tiled map services.  From your description of what you're wanting to create, it would be best to create the TPK file from Desktop tools; while there are a few issues, you already describing a Desktop-centirc approach.

AngelaBozeman
New Contributor III

Is there a limit to the number of Tile Packages, located on a SD card, that can be associated to a single survey?

Also, is there a size limit for tile packages that can be used in Survey123. It seems like any tile package over 3GB will not load into Survey 123.