Features
- Add Screenshot and ViewHierarchy to integrations list (#2698)
- New ANR detection based on ApplicationExitInfo API (#2697)
- This implementation completely replaces the old one (based on a watchdog) on devices running Android 11 and above:
- New implementation provides more precise ANR events/ANR rate detection as well as system thread dump information. The new implementation reports ANRs exactly as Google Play Console, without producing false positives or missing important background ANR events.
- However, despite producing many false positives, the old implementation is capable of better enriching ANR errors (which is not available with the new implementation), for example:
- Capturing screenshots at the time of ANR event;
- Capturing transactions and profiling data corresponding to the ANR event;
- Auxiliary information (such as current memory load) at the time of ANR event.
- If you would like us to provide support for the old approach working alongside the new one on Android 11 and above (e.g. for raising events for slow code on main thread), consider upvoting this discussion.
- The old watchdog implementation will continue working for older API versions (Android < 11)
- This implementation completely replaces the old one (based on a watchdog) on devices running Android 11 and above:
- Open up
TransactionOptions
,ITransaction
andIHub
methods allowing consumers modify start/end timestamp of transactions and spans (#2701) - Send source bundle IDs to Sentry to enable source context (#2663)
- For more information on how to enable source context, please refer to #633
Fixes
- Android Profiler on calling thread (#2691)
- Use
configureScope
instead ofwithScope
inHub.close()
. This ensures that the main scope releases the in-memory data when closing a hub instance. (#2688) - Remove null keys/values before creating concurrent hashmap in order to avoid NPE (#2708)
- Exclude SentryOptions from R8/ProGuard obfuscation (#2699)
- This fixes AGP 8.+ incompatibility, where full R8 mode is enforced