Skip To Content

Create a mobile app using a script

In this topic

Esri Maps for MicroStrategy includes a build script that allows you to create an iOS app (.ipa file) for installation on iPad devices using enterprise mobile device management tools. This app allows iOS mobile users to use maps created with the Esri Maps for MicroStrategy plug- in, providing access to all spatial analysis and mapping visualizations available in MicroStrategy documents

Compile and create the app

To compile and create a mobile Esri Maps for MicroStrategy app using the build script, do the following:

  1. On a Mac computer, if you're already using the MicroStrategy Xcode project, create a backup copy of the Xcode project folder, and note the location of the MicrostrategyMobile.xcodeproj file.
  2. If you're not already using the MicroStrategy Xcode project, download the current MicroStrategy 10.x iOS SDK software (.dmg file) from the MicroStrategy download site and expand it on a Mac computer. This contains the MicroStrategyMobileSDK iOS framework.
  3. Locate the Esri Maps for MicroStrategy ISO file (see Prerequisites) and copy the em4mm folder at the root of the ISO onto the Mac computer.
  4. For new build environments, copy all downloaded content to a new folder, such as <EM4MMInstall>.
  5. Open the <EM4MMInstall>/em4mm/build/ipa.env file in a text editor and set the following parameters:
    • MSTR_PROJ_PATH—Directory path of the MicroStrategy project. For example:


    • MSTR_LIB_DIR_PATH—Directory path that contains MicroStrategyMobileSDK iOS framework. For example:


    • EM4MSTR_IOS_SDK_PATH—Directory path that contains Em4Mstr iOS framework. For example:


    • BUNDLE_ID—Bundle ID of the app, usually in the following format: com.<company_name>.<app_name>. For example:


  6. Open the <EM4MMInstall>/em4mm/build/exportOptions.plist file in a text editor and set the following parameters:
    • teamID—The developer portal team ID to be used for building the app. To find the team ID, log in to the Apple Developer account and click the Membership link on the left.
    • method—Describes where the app is deployed. Set this to enterprise for in-house app deployment.
  7. Open a Terminal application and change the directories to the <EM4MMInstall>/em4mm/build/ folder.

    For example:

    $ cd <EM4MMInstall>/em4mm/build

  8. Verify that xcodeproj gem version 1.0.0 or later is installed on the Mac computer.
    • To verify that the software is installed, run the following script in a Terminal application:

      $ gem list

    • If xcodeproj gem v1.0.0 or later is not installed on the system, run the following command:

      $ [sudo] gem install xcodeproj

  9. Execute the build script.

    In a Terminal application, run the following command:

    $ ./


    Create a backup of any Xcode project that has been customized before running the script, as this script updates settings in your Xcode project.

    The IPA file is created in the following location: <EM4MMInstall>/em4mm/build/ipa/MicroStrategyMobileIPad <Current_Time>.

    Use this file to install the app on any iPad device using enterprise mobile deployment tools.


    Additional steps are required for PKI authentication with ArcGIS for Server. For more information, see Advanced PKI authentication.

Troubleshoot script issues

Resolve error messages

The following provisioning profile error message may occur:

Code sign error: no matching provisioning profiles found. No provisioning profile matching and applicable signing identity.

If you receive this message, ensure that the correct provisioning profile has been downloaded on the Mac by completing the following steps:

  1. Open Xcode Preferences and browse to Accounts.
  2. View details and locate the appropriate provisioning profile, ensuring it is downloaded on the Mac.
  3. If the correct provisioning profile is not located on the Mac, click Download all provision profiles before you run the build script.

Locate your team ID

To locate your team ID, do the following:

  1. Sign in to the Apple Developer website.
  2. View Membership Details to display the Team ID.