How To: Use a build script to create an iOS app using the Esri Maps for MicroStrategy iOS framework and MicroStrategy's Mobile iOS SDK versions 10.2 to 10.4
This article provides detailed steps on how to use build scripts for integrating the Esri Maps for MicroStrategy iOS framework with MicroStrategy's Xcode project and iOS framework using Esri Maps for MicroStrategy 2.0 and MicroStrategy's Mobile iOS SDK 10.2 to 10.4. The build script creates 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 plugin, thereby giving access to all spatial analysis and mapping visualizations available in MicroStrategy documents.
On a Mac computer, if already using the MicroStrategy Xcode project, create a backup copy of the Xcode project folder, and note the location of the MicroStrategyMobile.xcodeproj file.
If the MicroStrategy Xcode project is not being used, download MicroStrategy 10.2 iOS SDK software (.dmg file) from the MicroStrategy download site and expand it on a Mac computer. This contains the MicroStrategyMobileSDK iOS framework.
Find the location of the Esri Maps for MicroStrategy iOS framework, or download the Esri Maps for MicroStrategy 2.0.2 ISO file from the download site. Browse to the ISO file and copy the em4mm folder at the root of the ISO onto the Mac computer.
For new build environments, copy all downloaded content in a folder, such as <EM4MMInstall>.
Using the finder application, locate the downloaded file and copy the em4mm/build folder into <EM4MMInstall>/em4mm/ .
Open the <EM4MMInstall>/em4mm/build/ipa.env file in a text editor application, and set the following parameters:
MSTR_PROJ_PATH: Directory path of MicroStrategy project. For example: "<EM4MMInstall>/MicrostrategyMobile/MicrostrategyMobile.xcodeproj"
MSTR_LIB_DIR_PATH: Directory path that contains MicroStrategyMobileSDK iOS framework. For example: "<EM4MMInstall>/Library"
EM4MSTR_IOS_SDK_PATH: Directory path that contains Em4Mstr iOS framework. For example: "<EM4MMInstall>/em4mm/"
BUNDLE_ID: Bundle ID of the app, usually in the following format: com.<company_name>.<app_name>. For example: "com.mycompany.myapp"
Open the <EM4MMInstall>/em4mm/build/exportOptions.plist file in a text editor application, 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.
Open a Terminal application and change the directories to the <EM4MMInstall>/em4mm/build/ folder. For example:
$ cd <EM4MMInstall>/em4mm/build
Verify that xcodeproj gem version 1.0.0 or later is installed on the Mac computer.
To do so, run the following command in a Terminal application:
$ gem list
If xcodeproj gem is not installed on the system, run the following command:
$ [sudo] gem install xcodeproj
Execute the build script:
Create a backup of any Xcode project that has been customized before running the script, as this script updates settings in the Xcode project.
The .ipa file is created in the following folder: "<EM4MMInstall>/em4mm/build/ipa/MicroStrategyMobileIPad <Current_Time>" Use this file to install the app on any iPad devices using enterprise mobile deployment tools.
Additional steps are required for PKI authentication with ArcGIS Server. For more information, follow the Manual steps for PKI authentication link in the Related Links section below.
How to resolve script issues
If the following error message is returned:
"Code sign error: no matching provisioning profiles found: No provisioning profile matching an applicable signing identity."
Ensure the correct provisioning profile has been downloaded on the Mac.
Open Xcode Preferences and browse to Accounts.
View details and locate the appropriate provisioning profile, ensuring it is downloaded on the Mac. Otherwise, click Download all provision profiles before running the script.
How to locate the Team ID
Sign in to the Apple Developer website. View Membership Details to find the Team ID.