Initializing and Viewing Lifecycle Metrics with the Experience Platform SDK
- Topics:
- Mobile SDK
CREATED FOR:
- Experienced
- Developer
Lifecycle metrics are valuable, out-of-the-box information about your app user. These metrics contain information on the app user’s lifecycle such as device information, install or upgrade information, session start and pause times, etc. In this video, see how to set up lifecycle metrics in your app, and how to see the results in a debugger.
Transcript
In this video, I wanna talk to you about lifecycle metrics, which are part of the Adobe Experience Platform SDK that you’ll use for your mobile app tracking for analytics and other solutions in the Experience Platform. Now, you can see here in this documentation, the lifecycle metrics are valuable, out-of-the-box information about your app user. They’re about the lifecycle of your user like device information, install, upgrade information, session start, pause times, et cetera. So, that’s the stuff about the device and the environment. Now, here in the documentation, it will walk you through how to install this and everything, but I just wanted to kinda show you in a quick video how easy it is and how you can use it, how you can set it up, and then what you’ll also see when you apply it in your app. So, as you can see here, we’re going to import some core libraries, et cetera. Well, this all starts with Launch because this is where you’re actually going to implement the SDK. So, I’m in Launch here, and there’s other videos that will walk you through this, so I’m just going to point out the parts that really are applicable to lifecycle metrics. So, here I am in the iOS section, and so you’re going to use CocoaPods and you’ll see here that there is a pod for the ACPCore, and lifecycle metrics are part of the core library. I’m going to select Swift instead of Objective C, you can use either one for iOS here, but I just wanna show you that based on the different extensions that I’ve selected here, it will have an import statement, but the one I’m most interested here is import ACPCore. So, now the library has been imported and then there is some additional stuff here that you’ll use to register. You’ll register the lifecycle right here and you will then start it, and you’ll see this data right here. So, I’m going to show you this in Xcode, I just wanted to show you where you’re gonna get it. You’ll get it here from Launch and then you’ll apply it in your app. So, if I jump over to my app here, and I’m in my AppDelegate.swift file, I can see that I have added those things I have imported, the ACPCore library, and then in my didFinishLaunchingWithOptions function here, then I do have the lifecycle registration here of the extension, and then the start of it right here. So, putting those in here is all you really need to do in order to get lifecycle up and running. And so, if you really just follow the instructions that are provided to you in the documentation and then here in Launch, you can see in the background there, then you will be able to have the lifecycle metrics and you’ll be able to see all those data points, and those are also here in the documentation. If I just click on Lifecycle, right above that piece, then you’ll see that in the documentation, there’s a list of all the different metrics and dimensions that you’ll get just simply by putting in this, you know, one line of code or at least a couple lines of code. So, pretty easy. So, if I do have that there, then when I run my app, and I’m just gonna run and let me show you here I have my simulator there, and if I just run this code.
And when it comes up, one of the hits I’m going to get here is, in fact, my lifecycle hit. So, you’ll see all this different information that comes in here based on just really having that line of code there that says “start lifecycle tracking”. And so, that’s pretty much it. Now, you’ll see there are couple other hits here. One is that it is registering a CrashEvent and that’s just because I stopped my simulator and it looked like a crash. And so, this is good anyway to show you that if you do have a crash, then when you restart that app the next time or when your user restarts their app, it will send a crash event so that you know how many times your app is actually crashing, so you can take a look at that and fix that better for your users. And so, that’s pretty much it as far as getting it up and running. If for some reason, you didn’t want lifecycle, then you can just get rid of this line to start it and then those would not appear there at all. You would not have your lifecycle metrics. Not sure why you’d wanna do that because it’s great information, but in any case, you do have control over that. Now, one more thing to show you before I let you go here and that is a best practice with lifecycle. And we’ll go here, maybe I’ll make this a little bit bigger so we can see a little easier. But you will have in your app a DidEnterBackground and then WillEnterForeground function here for each of those. Now, it’s not required, but it is a best practice to actually put in an ACPCore.lifecyclePause event when it goes into the background, and then, again, a lifecycleStart, which is basically a Resume, when it comes back into the foreground. Okay? So, pause it when it goes into the background and start it again when it comes into the foreground. Now, it’s not gonna actually give you a hit from those, but it will simply affect the time-based lifecycle metrics, so it’s not counting the time when it’s in the background for some of the lifecycle metrics, et cetera. And I had put here just for fun a trackAction just to push and hit to say, hey, I’m back, but that is just me goofing around here, and you don’t have to put that one in. But your best practice here is to get it to do a pause when it goes in the background and then to do a resume or this lifecycle.Start as it comes into the foreground again. And that’s pretty much it. Good luck with these great lifecycle metrics.
For more information about Lifecycle metrics, please see the documentation.
Analytics
- Analytics tutorials
- Introduction to Analytics
- What is analytics
- What Can Adobe Analytics Do For Me?
- How Adobe Analysis Workspace Can Change Your Business
- It’s More Than Data. It’s Customer Intelligence
- Adobe Sensei and Adobe Analytics
- Customer Use Case - ServiceNow
- Customer Use Case - Accent Group
- Customer Use Case - The Home Depot
- Summit 2019 Super Session - Travel and Hospitality
- Summit 2019 Super Session - Retail
- Summit 2019 Super Session - High Tech
- Strategy & thought leadership
- Transitioning from other platforms
- Analytics Basics
- Customizing the UI
- Getting Help
- Analysis Workspace
- Analysis Workspace Basics
- Analysis Workspace quick intro
- Analysis Workspace overview
- Navigate the new landing page
- Start your analysis with a pre-built report
- Building a Workspace project from scratch
- Create and manage custom templates in Analysis Workspace
- Understanding how data gets into your Analysis Workspace project
- Foundational metrics in Adobe Analytics
- Component management in Analysis Workspace
- Selecting a report suite in Analysis Workspace
- View Analysis Workspace performance metrics
- Create bot reports
- Tips and Tricks
- Navigating Workspace Projects
- Data Dictionary in Analysis Workspace
- Starting your first project
- Training tutorial template
- Use folders in Analysis Workspace
- Copy and insert panels and visualizations
- Create a table of contents
- Right-click for Workspace efficiency
- Keyboard shortcuts
- Annotations
- View density
- Use filters
- Use multi-select drop-down filters
- Real-time reports
- Using Panels
- Using Tables, Visualizations, and Panels in Analysis Workspace
- Quick Insights Panel in Analysis Workspace
- Using the Attribution IQ Panel
- Media Concurrent Viewers Panel in Analysis Workspace
- Media Playback Time Spent Panel
- Using Drop-down Filters
- Using Panels to Organize your Analysis Workspace Projects
- Choose segments for a panel
- Multiple Report Suites in Analysis Workspace
- Next/Previous and Page Summary Workspace Panels & Reports
- Understanding attribution panel and lookback windows
- Building Freeform Tables
- Understand your data–freeform tables
- Use the left rail to build freeform tables
- Easy drag and drop to blank projects
- Work with dimensions in a freeform table
- Work with metrics in a freeform table
- Row and column settings in freeform tables
- Freeform table totals
- Use the freeform table builder
- Right-click for workspace efficiency
- Reorder static rows
- Use Attribution IQ in freeform tables
- Cross-sell analysis
- Freeform table filters
- Time-parting dimensions
- Visualizations
- Visualization types and overview
- Visualization use cases
- Data visualization playbook
- Getting data into visualizations
- Using component drop-downs in Workspace
- Area and area stacked visualizations
- Bar and bar stacked visualizations
- Bullet graph visualization
- Donut visualization
- Histogram visualization
- Unlocking insights with histograms
- Line visualization
- Combo charts
- Adding trend lines to line visualizations
- Map visualization
- Summary number and summary change visualizations
- Key metric summary visualization
- Text visualization
- More than words - Using text visualizations and descriptions
- Scatterplot visualization
- Treemap visualization
- Venn diagram visualization
- Use the cumulative average function to apply metric smoothing
- Flexible layouts
- Changing the scale/axis on visualizations
- Dimension-graph live linking
- Set the granularity for visualizations
- Link inside or outside of your project
- Customize visualization legends
- 100% stacked visualizations
- Table and visualization data source settings
- Build a time-parting heatmap
- Analyzing Customer Journeys
- Applying Segments
- Apply segments to your Analysis Workspace project
- Apply ad hoc segments
- Use different Attribution IQ models with segments
- Choose segments for a panel
- Use segments as Dimensions in Analysis Workspace
- Use segments to limit data in Analysis Workspace
- Quick segments in Analysis Workspace
- Building Customer Journey Segments
- Building Customer Journey Segments - Part 2
- Metrics
- Dimensions
- Calendar and Date Ranges
- Curate and Share Projects
- Attribution IQ
- Using Cross-tab Analysis to Explore Basic Marketing Attribution
- Adding side-by-side comparisons of Attribution IQ Models
- Attribution IQ in Calculated Metrics
- Using Attribution IQ in Freeform Tables
- Using the Attribution IQ Panel
- Using different Attribution IQ models with segments
- Algorithmic Model in Attribution IQ
- Custom Look-back Windows in Attribution IQ
- Cohort Analysis
- Cohort Analysis in Analysis Workspace
- Understand your data–Cohort Tables
- Overview of Cohort Tables
- Cohort Table Settings
- Churn Analysis with Cohort Tables
- Cohort Analysis Using Any Dimension
- Latency Analysis with Cohort Tables
- Calculate Rolling Retention in Cohort Tables
- Use Cohort Analysis to Understand Customer Behavior
- Voice Analytics
- How to Manage and Track Your Voice Assistant App Data
- Understand Differences Across Voice-Enabled Devices
- Finding Opportunities To Increase Engagement for Voice Apps
- Reducing Error Rates and Improving Success Rates in Your Voice App
- Understand User Behavior on Voice Assistants
- Understanding the User’s Voice Journey
- Analysis Workspace Basics
- Administration
- Key Admin Skills
- Creating an empowered community
- Simplify and spend less time training users
- Getting the Right People on Your Analytics Team
- Gaining a seat at the table
- Telling impactful stories with data
- Translating Adobe Analytics technical language in a non-technical way
- Working cross-functionally
- Are you asking the right questions?
- Admin Tips and Best Practices
- Download the implementation playbook
- Audit your data dictionary
- Create standardized naming conventions
- Create standardized code templates
- Create basic videos and training
- Create an internal Adobe Analytics site
- Use a global report suite
- Create a news & announcements project
- Drive success with executive summary dashboards
- Create Operational Dashboards
- Company Settings
- User Management
- Manage Report Suites
- How to Configure General Account Settings
- Customize Calendar Settings
- Configure Paid Search Detection
- Set up marketing channels
- Create marketing channel processing rules
- Manipulating incoming data with Processing Rules
- Configuring Traffic Variables (props)
- Configure traffic classifications
- Configure hierarchy variables
- Configuring Variables in the Admin Console
- Configure conversion classifications
- Configuring List Variables
- Configure Finding Methods
- Set Internal URL Filters
- Configuring Zip and Postal Code Settings
- Enable the Timestamp Optional setting
- Configure bot rules in Analytics
- Data Governance and GDPR
- Traffic Management
- Logs
- Key Admin Skills
- Implementation
- Implementation Basics
- Experience Platform Tags
- Implement Experience Cloud solutions in websites using Tags
- Basic configuration of the Analytics extension
- Configure library management in the Analytics extension
- Configure general settings in the Analytics extension
- Configure global variable settings in the Analytics extension
- Use custom code in the Analytics extension
- Use a data layer to set variables
- Use doPlugins and implementation plug-ins
- Configure easy download link tracking
- Configure easy exit link tracking
- Prepare Tags for your Analytics implementation
- Create data elements for the Analytics implementation
- Create a global page load rule
- Validate the global page load rule
- Create rules for special pages
- Create rules for success events
- Publish Tags libraries to stage and production
- Using JavaScript
- Components
- Segmentation
- Segment builder overview
- Finding and creating segments
- Rolling date ranges in segments
- Segment comparison in Analysis Workspace
- Segment containers
- Segment management and sharing
- Applying segments in Analysis Workspace
- Using segments as dimensions
- Using segments to limit data
- Differences between the segment builder and quick segments
- Sequential segmentation
- Before/After sequences in sequential segmentation
- Segmentation on distinct dimension counts
- Dimension models in segmentation
- Use ‘equals any of’ in segmentation
- Analytics Insider Webinar - Customer Segmentation Strategies
- Now just wait a segment… Using segmentation to discover new insights
- Calculated Metrics
- Calculated metric builder overview
- Calculated metrics - implementation-less metrics
- Calculated metrics - segmented metrics
- Calculated metrics - functions
- Approximate count distinct function in calculated metrics
- Quick calculated metrics in Analysis Workspace
- Manage your calculated metrics
- Attribution IQ in calculated metrics
- Use dimensions in calculated metrics
- Take your data analysis to the next level with calculated metrics
- Classifications
- Virtual Report Suites
- Activity Map
- Segmentation
- Additional Tools
- Exporting
- From the UI
- Data Warehouse
- Data Feeds
- Report Builder
- Upgrade and reschedule workbooks
- Add Segments to Multiple Requests at Once in Report Builder
- Anomaly Detection in Report Builder
- Edit Metrics across Requests
- Using Report Builder to learn the Adobe Analytics API
- Get started with Report Builder
- Schedule a Report Builder request
- Use Report Builder advanced delivery options for Power BI
- Integrations
- Experience Cloud
- Audience Manager
- Target
- Adobe Advertising DSP
- Configuring Advertising Analytics
- Implementing tracking templates into search engines
- Introduction to the Adobe Advertising DSP integration
- Create a Pre-launch campaign analysis
- Report on Advertising DSP marketing channels
- Create Analytics site journey profiles
- Create Analytics segments for activation and reporting
- Create Advertising DSP alerts with Adobe Analytics
- Create Analytics custom metrics with Advertising DSP data
- Create Advertising DSP site entry reports
- Create Advertising DSP dashboards
- Ad Hoc Analytics
- Power BI
- Magento
- Data Science
- Vertical-Specific
- Media Analytics
- Mobile App Analytics
- APIs
- Analysis Use Cases