[GIS] Difference between MPK and MMPK

arcgis-runtime-sdk-wpfmap-package

I am currently trying to load a MPK package using ArcGIS runtime 100.2.1 for .NET (WPF). The package comes from external sources, and I do not have ArcGIS Pro/ArcMap at the moment as I am trying to do a basic evaluation for now.

Apparently, I thought it would work as I saw the documentations of ArcGIS runtime 10.2 stating the support of "MPK" files, then gradually I realized that "MPK" seems to have disappeared in the documentations of ArcGIS runtime 100 onwards, and the documentations started to mention about "MMPK".

What are the differences between "MPK" and "MMPK"? Can they be used interchangeably, or be converted without the use of ArcGIS Pro/ArcMap?

Best Answer

An MPK is a Map Package, created in ArcMap. A MPKX can be created in ArcGIS Pro. They're basically the same thing, with the exception that a MPKX cannot be read by ArcMap, where the MPK can be read in ArcGIS Pro.

An MMPK is a Mobile Map Package, and can only be created in ArcGIS Pro. It can be read back into ArcGIS Pro.

The Map Package and Mobile Map Package are sort of the same thing, and within reason you could use the terms/packages interchangeably. They both have a map and data inside the package. You can consume packages inside ArcGIS Desktop (MPK inside both ArcMap and Pro, while MMPK can be consumed in Pro). The biggest difference between the two packages is how/where they're typically consumed. A map package is generally consumed in ArcGIS Pro or ArcMap. The Mobile package is typically consumed in a mobile client (Explorer, Navigator and Runtime).

Prior to the MMPK (mobile) if you wanted to use a package with ArcGIS Runtime, you would make an MPK, but you'd need to ensure that package was built with an optional setting of Support ArcGIS Runtime set.

I understand the confusion. Its the evolution of 2 desktop products (ArcMap, ArcGIS Pro) and 2 Runtime versions (10.2, or pree 100 and Post 100) which can make it sort of hard to follow. As this question is specific to Packages and the Runtime, perhaps this chart will help:

Creating App  --  Consuming App  -- Package
ArcMap            Runtime 10.2      MPK /w Runtime support
ArcMap            Runtime 100+      MPK /w Runtime support
ArcGIS Pro        Runtime 10.2      MPKX /w Runtime support 
ArcGIS Pro        Runtime 100+      MMPK (mobile)
  • Runtime 10.2 used as an example and represents any runtime version before 100.

Runtime Versions -> Consuming Packages

ArcGIS Runtime 10.2 cannot consume a MMPK (mobile package).

ArcGIS Runtime 100-100.2 can consume MMPK (mobile package) and MPK (map package from ArcMap only) via Local Server

ArcGIS Runtime 100.3+ added support for MPKX (Pro map packages) via Local Server

Reference:

Related Question