Skip to content

Conversation

@arti-arutiunov
Copy link
Contributor

What does this PR do? What is the motivation?

Added 1 new page in RUM for iOS and 1 new page for Android documentation. Both pages explain the new application launch monitoring feature. This PR also removes the legacy application launch monitoring documentation from the Data Collected page.

Merge instructions

Merge readiness:

  • Ready for merge

For Datadog employees:

Your branch name MUST follow the <name>/<description> convention and include the forward slash (/). Without this format, your pull request will not pass CI, the GitLab pipeline will not run, and you won't get a branch preview. Getting a branch preview makes it easier for us to check any issues with your PR, such as broken links.

If your branch doesn't follow this format, rename it or create a new branch and PR.

[6/5/2025] Merge queue has been disabled on the documentation repo. If you have write access to the repo, the PR has been reviewed by a Documentation team member, and all of the required checks have passed, you can use the Squash and Merge button to merge the PR. If you don't have write access, or you need help, reach out in the #documentation channel in Slack.

Additional notes

@arti-arutiunov arti-arutiunov requested a review from a team as a code owner January 7, 2026 18:30
@github-actions github-actions bot added Architecture Everything related to the Doc backend Images Images are added/removed with this PR labels Jan 7, 2026
@arti-arutiunov arti-arutiunov requested a review from rtrieu January 7, 2026 18:32
@maycmlee maycmlee added the editorial review Waiting on a more in-depth review label Jan 7, 2026
@maycmlee
Copy link
Contributor

maycmlee commented Jan 7, 2026

Created a docs card for review: https://datadoghq.atlassian.net/browse/DOCS-13047

Copy link
Contributor

@rtrieu rtrieu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

some minor feedback to comply with our style guide, but otherwise awesome PR!

text: Explore Datadog RUM
---

<div class="alert alert-danger">
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is there a more relevant section we could move this down to?

{{% /tab %}}
{{< /tabs >}}

If you use reportFullyDrawn to identify the moment of full display, you can use getFullyDrawnReporter to subscribe to `reportFullyDrawn` and call `RumMonitor.reportFullyDrawn`. If you do not use reportFullyDrawn, you can still call `RumMonitor.reportFullyDrawn`, but it will make sense only for cold and warm starts, rather than hot starts.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can we explain exactly why it only makes sense for cold and warm starts? what is the impact?

@rtrieu
Copy link
Contributor

rtrieu commented Jan 13, 2026

also, can you crop these images so that the nav sidebar and search bar are not visible? the left nav can often change.

  • static/images/real_user_monitoring/android/android-rum-summary-app-launch.png
  • static/images/real_user_monitoring/ios/ios-rum-summary-app-launch.png

variant = "<APP_VARIANT_NAME>"
).build()

Datadog.initialize(this, configuration, trackingConsent)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this code snippet shows only core SDK setup, should it include example of reportAppFullyDisplayed call?

upd: like for iOS

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@0xnm Yes, it should. I generated this with AI, so please let me know if it an incorrect equivalent:

class HomeActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_home)
        lifecycleScope.launch { loadData() }
    }

    private suspend fun loadData() {
        val url = URL("https://api.example.com/data")
        try {
            val data = withContext(Dispatchers.IO) {
                url.openConnection().getInputStream().bufferedReader().readText()
            }
            updateUI(data)
        } catch (e: Exception) {
            // Handle the error if needed
        }

        // Mark the app as fully displayed
        GlobalRumMonitor.get().reportAppFullyDisplayed()
    }
}

{{% /tab %}}
{{< /tabs >}}

If you use reportFullyDrawn to identify the moment of full display, you can use getFullyDrawnReporter to subscribe to `reportFullyDrawn` and call `RumMonitor.reportFullyDrawn`. If you do not use reportFullyDrawn, you can still call `RumMonitor.reportFullyDrawn`, but it will make sense only for cold and warm starts, rather than hot starts.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is not the actual API. Where getFullyDrawnReporter is coming from?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That API is the Android one for the users to report TTFD. More info here

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks! My IDE didn't find it by some reason. It is worth to add a link to this API.

{{% /tab %}}
{{< /tabs >}}

If you use reportFullyDrawn to identify the moment of full display, you can use getFullyDrawnReporter to subscribe to `reportFullyDrawn` and call `RumMonitor.reportFullyDrawn`. If you do not use reportFullyDrawn, you can still call `RumMonitor.reportFullyDrawn`, but it will make sense only for cold and warm starts, rather than hot starts.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks! My IDE didn't find it by some reason. It is worth to add a link to this API.

Co-authored-by: Nikita Ogorodnikov <4046447+0xnm@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Architecture Everything related to the Doc backend editorial review Waiting on a more in-depth review Images Images are added/removed with this PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants