AppMon UEM's mobile application support lets you track visitors, actions, and action PurePaths triggered by your iOS and Android application. To trace user activity, you must add mobile agent method calls to your mobile application's source code. When the mobile agent is embedded in the application, user experience data can be analyzed in the same way as for users browsing your UEM enabled web site.
- A recent Apple iOS (armv7, armv7s, arm64 or later architecture, iOS 6 or later).
- Android version 2.3 or later.
See Release notes for details.
The setup is similar to the setup for UEM:
- Perform basic AppMon setup. See the appropriate topics under Set up System Components.
- Apply the UEM license, including Visits Volume. See Licensing.
- Install an Agent on the application server or web server. See User Experience Management Administration.
Integrate with the application
Se the relevant topics linked below for detailed information on integrating the Mobile Agent into your mobile application.
- iOS Agent Setup and Instrumentation
- Auto-Instrumentation for iOS
- Android Agent Setup and Instrumentation
- Auto-Instrumentation for Android
Link web requests
If a web request is tagged and the server side is instrumented, the server side web request PurePath links to the mobile User Action PurePath.
- If the web request is tagged on the same thread where a currently open action was started, it is always linked to this action.
- If the web request is tagged in a different thread, it is only assigned to an action if the web request occurs during the time frame of the action and the action is left in the same thread. Because AppMon currently does not capture the latency between the web request started on the mobile side and received on the server side, linking by thread ID and time frame is not guaranteed to work as expected for higher-latency scenarios.
Configure mobile data collection
In the User Experience item of the System Profile Preferences dialog box, you can adjust mobile data capture settings. To access these settings, right click your system profile and select Edit system profile > User experience > <application tab> > Mobile applications. See Mobile applications of the System Profile - User Experience to learn about configuring mobile application settings.
To limit overhead, a maximum depth of 10 nested mobile actions is evaluated. Deeper nested actions are skipped and not shown in the User Action PurePath.
To evaluate the results returned by the instrumented mobile application, subscribe new Measures for Mobile Actions in the Measure Configuration dialog box. To access it, right click your system profile and select Edit system profile > Measures, then expand User Experience Management > User Actions > Mobile Actions and double click the required measure. See Edit a System Profile and System Profile - Measures.
When you have configured AppMon for mobile data collection, the Visits Dashlet displays mobile visits, identified by mobile device, and shows all user actions per visit. To easily identify mobile visits, click Grouping and select either the Client type, Client family or Application
Right click a user action, and select Drill down > User action PurePaths to open the User Action PurePaths Dashlet linked to server-side PurePaths.
The Transaction Flow dashlet displays a visualization of your PurePaths, including PurePaths for mobile devices. To open it, right click a PurePath you want to analyze and select Drill down > Transaction Flow.
Zoom in to see where most of the time is spent.
The icons that identify mobile actions and events are defined in the following table.
|Mobile lifecycle action (for example app start, display and redisplay of a view).|
|Timestamp for events of a lifecycle action.|
|Report value event.|
|Report error event.|
|Crash with attached crash report.|
|Recurring crash (no crash report attached).|
Mobile App Performance Overview dashboard
Use the Mobile App Performance Overview dashboard to analyze data generated by mobile applications. Access this dashboard from the User Experience tab in the Start Center.
The dashboard displays the response time, visits, errors, crashes, and user actions of mobile applications.
The following metrics are collected and available in various parts of UEM dashboards.
|Agent Version||Version of the Mobile Agent with which the application was instrumented (for example 22.214.171.1243).|
|Application Name||The mobile application name.|
|Application Build Version||iOS:
|Battery Status||Device battery strength (for example 70%).|
|Connection Type||Mobile, WiFi, LAN or Offline.|
|Network Protocol||Offline, 802.11x (for WiFi connections), LTE and others.|
|Device Name||The make and model of the device. For example, SAMSUNG-SGH-I727, iPhone 5S, iOS Simulator, google_sdk (if emulator).|
|Device Manufacturer||For example, Apple, Samsung, unknown (if emulator).|
|Total Memory||Device RAM, in megabytes (for example 1024).|
|Free Memory||Percentage of free RAM.|
|Number of Running Processes||The number of active application processes running on the mobile device.|
|OS Family||The operating system: iOS, Linux.|
|OS Name||The name and version of the operating system, for example iOS 7.0, Android 4.2.|
|Screen Resolution||The screen resolution in pixels, for example 480 X 800|
|Device Orientation||The default orientation for the device, for example portrait for a mobile phone or landscape for a tablet.|
|Device Carrier||The carrier that provides the signal for the Android device, for example AT&T. Android displays if the carries is an emulator. Not available for iOS.|
|CPU Information||The device's CPU, for example ARMv7.|
|Rooted/Jailbroken||Whether the device's software is rooted (Android) or jailbroken (iOS). Displays genuine if device's software is not rooted or jailbroken.|
The overhead depends on the instrumentation that you put into your app. It consists of:
- Data traffic to the server
- Memory usage
- Execution time of the action in the app
All three factors mainly depend on the number of nodes that your instrumentation is about to produce.
For example, assume a user generates 20 user action per agent send interval (the default interval time is 2 minutes) and each user action consists of ten nodes: a root node and nine subnodes. The average node size is approximately 150 bytes. So ten notes add up to 1500 bytes (10 * 150) and 20 user action add up to ~30 KB (20 * 1500 bytes). Normal user actions consist of less than ten nodes per action, so overhead should be less than in this example. Also the agent uses gzip compression to reduce the data traffic to the server.