Create Mobile Map Package (Data Management)

Summary

Packages maps and basemaps along with all referenced data sources into a single .mmpk file.

Usage

  • Mobile map packages can be used by AllSource, ArcGIS Navigator, and by developers building applications with ArcGIS Runtime SDK. For ArcGIS Runtime SDK, .mmpk files were introduced at version 100.0.

  • Mobile map packages can be shared with others by uploading them to your organization in ArcGIS Online or by sharing an .mmpk file through common file sharing methods.

  • Mobile map packages support simple features, raster datasets, tables, relationship classes, locators, network datasets, and maps that contain map tile (.tpk) or vector tile (.vtpk) packages. Mobile map packages created in AllSource for use in apps created with ArcGIS Runtime SDKs currently only support the following layer types: feature layers, raster layers, raster tiled layers from previously created .tpk files, and vector tiled layers from previously created .vtpk files.

  • If an extent is not specified, the visible extent of the map will be used to define the area of interest (AOI) and consolidate only those features that intersect that extent.

  • When creating a mobile map package, all maps, basemaps, and data layers will be projected to a common coordinate system. The coordinate system that will be used is the coordinate system of the first input map specified.

  • If the map contains a network layer that references a network dataset, it will be included in the mobile map package as a transportation network for routing and driving directions. All feature classes and tables that the network references will become part of the mobile map package. This may include layers that are not part of the map. For example, if there is only a network layer in the map, the package will include the streets, junctions, and turns feature classes associated with the network.

    For a network dataset to support mobile map packaging, keep the following restrictions in mind:

    • The network dataset must be part of a geodatabase. This excludes networks that are in SDC or shapefile format.
    • The network dataset must be from ArcGIS 10.0 or later. If the network is from an earlier version, upgrade the geodatabase and network.
    • The network dataset cannot have an unknown coordinate system.
    • The network dataset cannot use any VB or Python script evaluators.
    • The network dataset cannot use any custom COM evaluators.
    • A network dataset that uses live traffic will be packaged, but the live traffic components will not be used since they are not supported.

Parameters

LabelExplanationData Type
Input Map

One or more maps or basemaps that will be packaged into a single .mmpk file.

Map
Output File

The output mobile map package (.mmpk).

File
Input Locator
(Optional)

One or more locators (.loc) to include in the mobile map package.

Note:
Locators have the following restrictions:
  • The locator cannot have an unknown coordinate system.
  • The locator or any participating locator in a composite locator cannot be a geocoding service, including services from ArcGIS Enterprise or ArcGIS Online.
Address Locator
Area of Interest
(Optional)

Polygon layer that defines the area of interest. Only those features that intersect the Area of Interest value will be included in the mobile map package.

Feature Layer
Extent
(Optional)

Specifies the extent that will be used to select or clip features.

  • Default—The extent will be based on the maximum extent of all participating inputs. This is the default.
  • Union of Inputs—The extent will be based on the maximum extent of all inputs.
  • Intersection of Inputs—The extent will be based on the minimum area common to all inputs.
  • Current Display Extent—The extent is equal to the visible display. The option is not available when there is no active map.
  • As Specified Below—The extent will be based on the minimum and maximum extent values specified.
  • Browse—The extent will be based on an existing dataset.
Extent
Clip Features
(Optional)

Specifies whether the output features will be clipped to the given Area of Interest value or Extent value.

  • Checked—The geometry of the features will be clipped to the given Area of Interest value or Extent value.
  • Unchecked—Features in the map will be selected and their geometry will remain unaltered. This is the default.

Boolean
Title
(Optional)

Adds title information to the properties of the package.

String
Summary
(Optional)

Adds summary information to the properties of the package.

String
Description
(Optional)

Adds description information to the properties of the package.

String
Tags
(Optional)

Adds tag information to the properties of the package. Multiple tags can be added or separated by a comma or semicolon.

String
Credits
(Optional)

Adds credit information to the properties of the package.

String
Use Limitations
(Optional)

Adds use limitations to the properties of the package.

String
Enable Anonymous Use
(Optional)

Specifies whether the mobile map can be used by anyone.

  • Checked—Anyone with access to the package can use the mobile map without signing in with an Esri Named User account.
  • Unchecked—Anyone with access to the package must be signed in with a Named User account to use the mobile map. This is the default.

License:

This optional parameter is only available with the Publisher extension.

Boolean
Enable Map Expiration
(Optional)

Specifies whether a time-out will be enabled on the mobile map package.

  • Checked—Time-out will be enabled on the mobile map package.
  • Unchecked—Time-out will not be enabled on the mobile map package. This is the default.
License:

This optional parameter is only available with the Publisher extension.

Boolean
Map Expiration Type
(Optional)

Specifies the type of access a user will have to the expired mobile map package.

  • Allow to openA user of the package will be warned that the map has expired, but will be allowed to open it. This is the default.
  • Do not allow to openA user of the package will be warned that the map has expired, and will not be allowed to open it.
License:

This optional parameter is only available with the Publisher extension.

String
Expiration Date
(Optional)

Specifies the date the mobile map package will expire.

License:

This optional parameter is only available with the Publisher extension.

Date
Expiration Message
(Optional)

A text message that will display when an expired map is accessed.

License:

This optional parameter is only available with the Publisher extension.

String
Keep only the rows which are related to features within the extent
(Optional)

Specifies whether the specified extent will be applied to related data sources.

  • Unchecked—Related data sources will be consolidated in their entirety. This is the default.
  • Checked—Only related data corresponding to records within the specified extent will be consolidated.
Boolean
Reference Online Content
(Optional)

Specifies whether service layers will be referenced in the package.

  • Unchecked—Service layers will not be referenced in the mobile package. This is the default.
  • Checked—Service layers will be referenced in the mobile package.

Boolean

arcpy.management.CreateMobileMapPackage(in_map, output_file, {in_locator}, {area_of_interest}, {extent}, {clip_features}, {title}, {summary}, {description}, {tags}, {credits}, {use_limitations}, {anonymous_use}, {enable_map_expiration}, {map_expiration_type}, {expiration_date}, {expiration_message}, {select_related_rows}, {reference_online_content})
NameExplanationData Type
in_map
[in_map,...]

One or more maps or basemaps that will be packaged into a single .mmpk file.

Map
output_file

The output mobile map package (.mmpk).

File
in_locator
[in_locator,...]
(Optional)

One or more locators (.loc) to include in the mobile map package.

Note:
Locators have the following restrictions:
  • The locator cannot have an unknown coordinate system.
  • The locator or any participating locator in a composite locator cannot be a geocoding service, including services from ArcGIS Enterprise or ArcGIS Online.
Address Locator
area_of_interest
(Optional)

Polygon layer that defines the area of interest. Only those features that intersect the area_of_interest value will be included in the mobile map package.

Feature Layer
extent
(Optional)

Specifies the extent that will be used to select or clip features.

  • MAXOF—The maximum extent of all inputs will be used.
  • MINOF—The minimum area common to all inputs will be used.
  • DISPLAY—The extent is equal to the visible display.
  • Layer name—The extent of the specified layer will be used.
  • Extent object—The extent of the specified object will be used.
  • Space delimited string of coordinates—The extent of the specified string will be used. Coordinates are expressed in the order of x-min, y-min, x-max, y-max.
Extent
clip_features
(Optional)

Specifies whether the output features will be clipped to the given area of interest or extent.

  • CLIPThe geometry of the features will be clipped to the given area_of_interest value or extent value.
  • SELECT Features in the map will be selected and their geometry will remain unaltered. This is the default.
Boolean
title
(Optional)

Adds title information to the properties of the package.

String
summary
(Optional)

Adds summary information to the properties of the package.

String
description
(Optional)

Adds description information to the properties of the package.

String
tags
(Optional)

Adds tag information to the properties of the package. Multiple tags can be added or separated by a comma or semicolon.

String
credits
(Optional)

Adds credit information to the properties of the package.

String
use_limitations
(Optional)

Adds use limitations to the properties of the package.

String
anonymous_use
(Optional)

Specifies whether the mobile map can be used by anyone.

  • ANONYMOUS_USEAnyone with access to the package can use the mobile map without signing in with an Esri Named User account.
  • STANDARDAnyone with access to the package must be signed in with a Named User account to use the mobile map. This is the default.
License:

This optional parameter is only available with the Publisher extension.

Boolean
enable_map_expiration
(Optional)

Specifies whether a time-out will be enabled on the mobile map package.

  • ENABLE_MAP_EXPIRATIONTime-out will be enabled on the mobile map package.
  • DISABLE_MAP_EXPIRATIONTime-out will not be enabled on the mobile map package. This is the default.
License:

This optional parameter is only available with the Publisher extension.

Boolean
map_expiration_type
(Optional)

Specifies the type of access a user will have to the expired mobile map package.

  • ALLOW_TO_OPENA user of the package will be warned that the map has expired, but will be allowed to open it. This is the default.
  • DONOT_ALLOW_TO_OPENA user of the package will be warned that the map has expired, and will not be allowed to open it.
License:

This optional parameter is only available with the Publisher extension.

String
expiration_date
(Optional)

Specifies the date the mobile map package will expire.

License:

This optional parameter is only available with the Publisher extension.

Date
expiration_message
(Optional)

A text message that will display when an expired map is accessed.

License:

This optional parameter is only available with the Publisher extension.

String
select_related_rows
(Optional)

Specifies whether the specified extent will be applied to related data sources.

  • KEEP_ONLY_RELATED_ROWSOnly related data corresponding to records within the specified extent will be consolidated.
  • KEEP_ALL_RELATED_ROWSRelated data sources will be consolidated in their entirety. This is the default.
Boolean
reference_online_content
(Optional)

Specifies whether service layers will be referenced in the package.

  • INCLUDE_SERVICE_LAYERSService layers will be referenced in the mobile package.
  • EXCLUDE_SERVICE_LAYERSService layers will not be referenced in the mobile package. This is the default.
Boolean

Code sample

CreateMobileMapPackage example 1 (Python window)

Python sample for CreateMobileMapPackage that packages multiple maps and basemaps from a project.

import arcpy

arcpy.management.CreateMobileMapPackage(
    ["Basemap1", "Basemap2", "Map1"], r"d:\temp\MobileMapPackage1.mmpk", 
    r"d:\data\MyLocators\AddressLocator.loc", None, "DEFAULT", "SELECT", 
    "Title", "Summary", "description", "Tag", "Credit information", 
    "Usage_Limitations")
CreateMobileMapPackage example 2 (stand-alone script)

Python sample for running CreateMobileMapPackage using an area of interest to clip features and setting an expiration date for two weeks from creation.

import arcpy
import datetime

days_valid = 14
expiration_date = (datetime.date.today() + datetime.timedelta(days=days_valid)).strftime("%x")
outputfile = "d:/Data/Output/sandiego.mmpk"

arcpy.management.CreateMobileMapPackage(
    [r"C:\data\Basemap1.mapx", r"C:\data\Map1.mapx"], outputfile, None, 
    r"\\share\layers\AreaOfInterest.lyrx", "DEFAULT", "CLIP", "Title", 
    "Summary", "description", "Tag", "Credits", "Use",
    "STANDARD", "ENABLE_MAP_EXPIRATION",
    "DONOT_ALLOW_TO_OPEN", expiration_date,
    "This map is expired.  Contact the map publisher for an updated map.")

Environments

Special cases

Parallel Processing Factor

If the environment is not specified, the tool will use one half of the available cores.