Skip to content

Commit b453da1

Browse files
Merge branch 'master' into elijames-codecov/add-copy-code-plausible-event
2 parents 415f9bc + 249a672 commit b453da1

File tree

3 files changed

+34
-25
lines changed

3 files changed

+34
-25
lines changed

docs/platforms/android/configuration/using-ndk.mdx

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ The Android Native Development Kit (NDK) allows you to implement parts of your a
88

99
NDK integration is packed with the SDK. The package `sentry-android-ndk` works by bundling Sentry's native SDK, [`sentry-native`](/platforms/native/). As a result, even if a native library in your app causes the crash, Sentry is able to capture it.
1010

11-
You can [disable the NDK integration](#disable-ndk-integration), use our Sentry Android SDK [without the NDK](#using-the-sdk-without-the-ndk).
11+
You can [disable the NDK integration](#disable-ndk-integration), or use our Sentry Android SDK [without the NDK](#using-the-sdk-without-the-ndk).
1212

1313
## Symbolicate Stack Traces
1414

@@ -21,39 +21,39 @@ Please check the full documentation on [uploading files](/platforms/android/data
2121

2222
## Allowing the Compiler to Link Libraries
2323

24-
To use the Android NDK in your native code, include the Sentry NDK libraries into your project so that the compiler can link the libraries during the build.
24+
To use the Android NDK in your native code, include the `sentry-native` NDK libraries so the compiler can link them during the build. Use Android prefab to consume Sentry's prebuilt packages and link them in your `CMakeLists.txt`.
2525

26-
To do so, use the AndroidNativeBundle Gradle plugin that copies the native libraries from the Sentry NDK into the location that can provide links via the `CmakeLists.txt` configuration file.
26+
<Alert>
2727

28-
First, we need to declare the dependency in the project build.gradle file:
28+
Android prefab support can only be used with Sentry Android SDK version 8.0.0 and above.
2929

30-
```groovy {filename:build.gradle}
31-
buildscript {
32-
repositories {
33-
mavenCentral()
34-
}
30+
</Alert>
31+
32+
Enable prefab and add the sentry-native ndk dependency directly to your module:
3533

36-
dependencies {
37-
// Add the line below, the plugin that copies the binaries
38-
// https://github.com/howardpang/androidNativeBundle/releases
39-
classpath 'io.github.howardpang:androidNativeBundle:{version}'
34+
```kotlin {filename:app/build.gradle}
35+
android {
36+
buildFeatures {
37+
prefab = true
4038
}
4139
}
42-
```
43-
44-
Once the dependency is declared, you can use it in the application `build.gradle`:
4540

46-
```groovy
47-
apply plugin: 'com.ydq.android.gradle.native-aar.import'
41+
dependencies {
42+
// The version MUST match with the version the Sentry Android SDK is using.
43+
// See https://github.com/getsentry/sentry-java/blob/{{@inject packages.version('sentry.java.android', '8.21.1') }}/gradle/libs.versions.toml
44+
implementation("io.sentry:sentry-native-ndk:<version>")
45+
}
4846
```
4947

50-
Then update the `CmakeLists.txt` configuration to link the Sentry NDK libraries:
48+
Link the pre-built packages with your native code
5149

52-
```
53-
# include paths generated by androidNativeBundle
54-
include (${ANDROID_GRADLE_NATIVE_BUNDLE_PLUGIN_MK})
55-
# change native-lib to your native lib's name
56-
target_link_libraries(native-lib ${ANDROID_GRADLE_NATIVE_MODULES})
50+
```text {filename:app/CMakeLists.txt}
51+
find_package(sentry-native-ndk REQUIRED CONFIG)
52+
53+
target_link_libraries(<app> PRIVATE
54+
sentry-native-ndk::sentry-android
55+
sentry-native-ndk::sentry
56+
)
5757
```
5858

5959
Now you can use the Sentry NDK API just by including the `sentry.h` in your code:

docs/product/insights/mobile/mobile-vitals/index.mdx

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,15 @@ In the example below, the detail view of a transaction displays the warm start m
3232

3333
While the SDKs differentiate between cold and warm starts, they don't track hot starts or resumes. To get more insight into your cold and warm start metrics, you can use the [App Starts](/product/insights/mobile/mobile-vitals/app-starts/) feature.
3434

35+
## Performance Score
36+
37+
Sentry categorizes average app start durations as follows:
38+
39+
| Metric | Good | Meh | Poor |
40+
| --- | --- | --- | --- |
41+
| Average Cold App Start | less than 3s | between 3s and 5s | greater than 5s |
42+
| Average Warm App Start | less than 1s | between 1s and 2s | greater than 2s |
43+
3544
## Slow and Frozen Frames
3645

3746
To track the responsiveness of the user interface, Sentry measures _slow frames_ and _frozen frames_. Both indicate if the rendering of a frame is taking too long, causing the UI to appear laggy or frozen.

docs/product/user-feedback/index.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ Example search: `url:*/payments/*`
9393
For a list of search fields, refer to the [search documentation](/concepts/search/searchable-properties/user-feedback/).
9494

9595
## Spam Detection for User Feedback
96-
By default, Sentry auto-detects user feedback submissions that are likely to be spam and puts them in the “Spam” folder on the **User Feedback** page. This improves the quality and actionability of the feedback that are in the main list. To improve the quality of your alerts, feedback that's labeled as spam will bypass any User Feedback Alert Rules you may have configured, and you will not receive alerts for spam.
96+
If your organization has enabled Generative AI Features, Sentry will auto-detect user feedback submissions that are likely to be spam and put them in the “Spam” folder on the **User Feedback** page. This improves the quality and actionability of the feedback that are in the main list. To improve the quality of your alerts, feedback that's labeled as spam will bypass any User Feedback Alert Rules you may have configured, and you will not receive alerts for spam.
9797

9898
To make automatic spam detection possible, we use a Large Language Model that classifies messages. This language model is internal to Google Cloud Platform and no data is stored or persisted. This is part of our existing [sub-processor agreement](https://sentry.io/legal/dpa/#subprocessors).
9999

0 commit comments

Comments
 (0)