This article explains the functionality of the advanced settings for Feature tagging in your mobile app and helps determine the quality of a selection.
Visit the Pendo Academy for a video on advanced settings for mobile Feature tagging.
When to use advanced settings
The default feature rule is called Predicate, and it derives its value from the Feature's relative location. In addition to the predicate rule, Pendo offers additional advanced Feature tagging settings.
There are various scenarios that might require advanced settings when tagging Features, such as:
- Multiple Features highlighted. For accuracy issues in the tagging tool, such as highlighting the entire navigation bar or multiple elements.
- Unexpected Feature traffic. Too much or too little traffic can indicate inaccurate selection.
- Interrupted analytics. If analytics suddenly stop, update your tags.
- Localized apps and dynamic buttons. It’s common for apps to be localized and buttons to dynamically shift on screen.
Access the advanced settings
To access the advanced settings, in the Tagged Features tab on the Feature's details page, scroll down and select Advanced settings.
Modifiers
A modifier adjusts how Feature data is organized, collected, or displayed without directly impacting the Feature rule itself. These settings customize data handling for analytics and reporting purposes. There are three available options:
- App-wide
- Ignore index in list
- Ignore bundle name
App-wide
This modifier is used for Features that appear across your mobile app, such as on the navigation menu or a tab bar button. App-wide lets Pendo collect click events for these Features regardless of the Page tagged in your app.
As a best practice, tag the app-wide Feature from the home screen or use a naming convention to help you and others easily locate it. For example, Info (tagged on Home)".
Use cases:
- Navigation menus or tab bars. When a Feature is present no matter where you go in the app.
- Global feature interactions. When you want to track user interactions regardless of the page they're on.
Ignore index in list
This modifier disregards the position or index of the Feature within a list when tagging list items in the application.
Use cases:
- Dynamic lists. When the content of the list changes each time a user logs into the application, you can still collect analytics from every click no matter where it is on the list.
- Permission-based apps. Where certain buttons do or don't show based on permissions.
- Click analytics. When you want to collect analytics on clicks on any item in the list, or for guide activation after clicking a list item.
Ignore bundle name (iOS-only)
If you enable this setting, the bundle name, which is unique to iOS applications and serves as the app's identifier in the Apple App Store, is ignored.
Use cases:
- White-labeled apps. Ignoring the bundle name ensures that analytics and reporting treat all versions of the app as one entity.
- Development environments. Ignoring the bundle name helps bring together data from all variations of the same app (like production, development, and testing).
Modifier details
Rule name | Description | Category | iOS or Android | Safe for positionally dynamic elements? |
Localization safe? |
App-wide |
Collects clicks for this Feature from all pages and prevents the need to tag it on other pages. |
Modifier |
Both |
Yes |
Yes |
Ignore index in list | Ignores the position of this Feature in its list. | Modifier | Both | Yes | Yes |
Ignore bundle name | Ignores the bundle name. The bundle name is unique to iOS applications and serves as the app's identifier in the Apple app store. | Modifier | iOS | Yes | Yes |
Attributes
Pendo identifies the mobile Feature based on its attributes. At times, the automatically selected default attributes might not identify the Feature precisely. You can refine Feature rules by selecting the attributes that best identify the Feature.
There are three different types of attribute categories.
- Positional. Attributes that describe where the Feature is located and how it is spatially situated within the application.
- Text-based. Attributes of a specific Feature that are identified by their textual information.
- General. These attributes provide information about Features that aren't tied to specific language translations or spatial arrangements.
Positional attributes
Positional attributes are used to identify Features within a mobile application based on their spatial arrangement.
Tip: Rely on positional attributes only if your elements are static, meaning they're consistent in their position across user permissions, user sessions, or other conditions.
Text-based attributes
These attributes provide information about the displayed text, such as labels or descriptions.
Localized applications tip: It's important to know if your app is built in multiple languages. You need to know whether the text for the Feature changes based on different builds or user settings. If it does, then be careful when tagging Pages and Features. It's recommended to find other tags to use that are text-independent.
You can use these attributes if your app is non-localized and typically maintains a single language so that you can confidently rely on text-based attributes. If your application is translated into multiple languages, refrain from relying on text.
General attributes
The general attributes are a collection of attributes that are localization-safe and not positionally oriented. You can use these on any of the following use cases:
- Action
- Accessibility identifier
- View tag
- ID
- Image name
Attribute details
Note: Not all attributes appear for all Features. Each Feature has a different set of attributes.
Rule name | Description | Category | iOS or Android | Safe for positionally dynamic elements? |
Localization safe |
Action | Action triggered by user tap or click on the Feature. | General | Both | Yes | Yes |
Text | Display text of the Feature. | Text | Both | Yes | No |
Accessibility hint | Description of action taken that aids accessibility and user understanding. | Text | iOS | Yes | No |
Accessibility label | Descriptive text for the Feature that aids accessibility and screen readers. | Text | Both | Yes | No |
Accessibility identifier |
Text for identifying the Feature, which aids accessibility and testing. |
General |
iOS |
Yes |
Yes |
Index |
Position of the Feature within its parent. |
Positional |
Both |
No |
Yes |
View tag |
Identifier for the Feature that simplifies referencing and manipulation in code. |
General |
Both |
Yes |
No |
Child element texts |
Use this attribute if the texts of the child elements are unique on this page. |
Text |
Both |
Yes |
No |
Cell row |
Row position inside the table. |
Positional |
iOS |
No |
Yes |
Cell section |
Section position inside the table. |
Positional |
iOS |
No |
Yes |
Image name | Name of the image asset. | General | iOS | Yes | Yes |
ID | Unique identifier assigned by the developer in the code. | General | Android | Yes | Yes |
View controller | The container element of the Feature within the app’s screen hierarchy. | General | iOS | Yes | Yes |
Feature class |
Class name of the Feature. |
General |
Both |
Yes |
Yes |
Icon code |
Unique value assigned to the icon in the font |
General |
Both |
Yes |
Yes |