SDK Version Notes
This document introduces the update records of the SDK version matched with the Basis Application Performance Monitoring (APM) 3.0 platform.
| Version | Update Time | Update Content |
|---|---|---|
| Android 2.18.0 | 2026-06-10 | 1. Add: Support collecting app exit reasons (requires Android 11 or higher version) 2. Add: Supports custom attribute capabilities; custom tags can be set for data via the setTag() method. 3. Add: Supports network detection via API and returns detection results through callback. 4. Optimize: Supports embedding code with WebChromeClient and automatically injecting JS probes. 5. Optimize: Compliance optimization: support limiting the frequency of obtaining Local DNS via dial test. 6.Optimize: Compliance optimization: optimize the data reporting timing when the app enters the background. 7. Optimize: Performance optimization: reuse Bitmap pool when creating bitmaps during video callback retrieval to reduce memory footprint. 8. Fix: The custom okhttp3 RequestBody uses an InputStream as the constructor parameter. The InputStream is closed after the SDK reads the request body for data collection, causing the request to fail. 9. Fix: Fix the occasional H5 data loss issue when adding multiple JsBridge to X5WebView. 10. Fix: When the SDK enables national cryptographic algorithms and the encryption methods are called concurrently, ciphertext corruption may occasionally occur, resulting in parsing failures on the server side and missing report data. |
| Android 2.17.7 | 2025-05-27 | 1. Optimization: SDK log output can now be configured via interface to output logs at different levels 2. Optimization: Removed OAID collection logic 3. Optimization: versionName is now fetched after SDK initialization 4. Optimization: Adjusted stuttering collection logic 5. Fix: Resolved latency issue when splicing encrypted userId into request headers with SM encryption enabled |
| Android 2.17.6 | 2025-03-20 | 1. Optimization: User experience page latency no longer uses the 8060 algorithm by default 2. Optimization: Adjusted stuttering algorithm 3. Optimization: Improved FPS frame drop scoring algorithm 4. Optimization: Added support for embedded WebView data collection in mPaaS 5. Optimization: Refactored WebView JS injection logic 6. Optimization: Optimized SDK logic for locating AndroidManifest.xml 7. Optimization: Adapted to SM (State Cryptography) version 1.78.1 8. Optimization: Adapted rootView retrieval for tablets 9. Fix: Fixed unrestricted data structure size issues 10. Fix: Fixed delayed packet reception in okhttp-sse caused by replacing okhttp ResponseBody |
| Android 2.17.5 | 2024-09-03 | 1. New: Page frame rate collection 2. New: Added CPU usage rate, CPU usage speed collection, and CPU exception collection 3. New: Link propagation supporting W3C tracecontext and SW8 protocols 4. New: View system rendering completion time calculation using 6080 visibility algorithm 5. New: Event correlation in user sessions supporting page/operation association and APM transaction tracing 6. Optimization: Reduced IP collection frequency for network modules (same domain collected once) 7. Optimization: Added Operation-Type splicing for mPaaS requests |
| Android 2.17.4 | 2024-03-29 | 1. Add: Video recording UI privacy mask configuration, supports masking input box, text, image, control, and page (minimum supported version for video recording is Android 8.0) 2. Add: Support request content collection (body collection only supports okhttp3) 3. Add: H5 network request supports collection of initiatorType, renderBlockingStatus, serverTiming and other indicators 4. Add: Support mpaas embedded WebView data collection 5. Optimize: Cross-application request header transmission of user identification 6. Optimize: Default off-site data collection 7. Optimize: OOM module initialization compliance processing 8. Optimize: Fix memory information CPU usage issue 9. Fix: Page experience data firstVc field is empty issue 10. Fix: When entering the background SDK data cache, there is a small probability of triggering the invalidation of network data filtering. |
| Android 2.17.3 | 2023-10-13 | 1. Add: Support power consumption analysis (current, temperature, AlarmManager, WakeLock support Android 5 and above, traffic support Android 6 and above, LocationManager support Android 5-12) 2. Optimize: SDK reporting data optimization 3. Fix: When enabling video recording, some pages window.getDecorView() height is 0, causing SDK to generate bitmap trigger crash problem 4. Fix: When analyzing OOM, there is a small probability of triggering BackgroundServiceStartNotAllowedException problem |
| Android 2.17.2 | 2023-09-18 | 1. Optimize: Operation experience data visualization logic 2. Optimize: Refactor embedding plugin 3. Optimize: Update built-in js probe 4. Optimize: Some SDK threads are not closed when entering the background |
| Android 2.17.1 | 2023-01-11 | 1. Add: Support OOM collection (requires kotlin and androidx projects, supports Android 5-12) 2. Optimize: Card blocking analysis supports flame chart 3. Optimize: Adapt AGP 7.3 namepace attribute 4. Optimize: Adapt ViewBingding and Kotlin plugin 1.5.0 + onClick event embedding 5. Optimize: When enabling national encryption, BouncyCastleProvider is no longer inserted into the first place 6. Optimize: Volley http error response content not collected problem 7. Optimize: Filter OkHttp cache missed 504 error thrown 8. Optimize: No longer collect stalls in the main process within 30 seconds after entering the background and stalls in child processes 9. Optimize: URL and error filtering logic 10. Fix: When Fragment uses setMaxLifecycle(fragment, Lifecycle.State.STARTED) to implement lazy loading, SDK collection page data may cause stalls problem 11. Fix: WebViewClient method p0 parameter type change causes SDK embedding to trigger VerifyError problem 12. Fix: Non-WebView class obfuscation loadUrl(), loadDataWithBaseURL(), SDK embedding reflection call error cannot be executed problem 13. Fix: Triggering crashes, small probability of triggering ConcurrentModificationException affecting crash data collection caused by processing okhttp3.WebSocket data 14. Fix: SDK unregister NetworkCallback, small probability of triggering IllegalArgumentException causing application crash problem 15. Fix: Injection js may cause application white screen problem |
| Android 2.17.0 | 2022-09-02 | 1. Add: Support screen recording function 2. Add: Support session data collection 3. Add: System events and custom events collection 4. Add: Log salvage function 5. Optimize: Startup, operation, page trace collection logic 6. Optimize: Support JDK 11 compilation environment embedding 7. Optimize: Support WebView automatic injection of js probes 8. Optimize: Distinguish stalls and ANR 9. Optimize: When collecting stalls, judge the thread status when sending Message 10. Optimize: Android 8 and above no longer obtain "net.dns1" through system properties 11. Optimize: Remove Transfer-Encoding chunked request header 12. Optimize: Support filtering of multiple okhttp3 custom ResponseBody 13. Optimize: Remove Json embedding 14. Optimize: Add base station data collection switch interface setCellCollectEnabled() 15. Optimize: Add catch processing to SDK entry method 16. Fix: VerifyError caused by embedding okhttp3.WebSocketListener with distribution mechanism 17. Fix: Compatibility issues with mpaas H5 container Nebula 18. Fix: VerifyError caused by embedding Agora Superboard SDK 19. Fix: Application entering the background during SDK data upload cycle, small probability of triggering ConcurrentModificationException problem 20. Fix: okhttp3 network data may have remaining packets of 0 problem 21. Fix: Report configuration regex filtering syntax error, small probability of triggering PatternSyntaxException problem 22. Fix: Small probability of extreme values during hot start 23. Fix: When returning to the previous Activity without executing onStart(), the page name is not reassigned problem 24. Fix: The problem that getting the project root directory through "user.dir" may be inaccurate 25. Fix: Base Activity final onKeyDown() embedding conflict problem |
| Android 2.16.0.19 | 2023-07-17 | 1. Fix: When the base class Activity onKeyDown() is decorated with final, triggering java.lang.LinkageError problem in the subclass |
| Android 2.16.0.18 | 2023-07-14 | 1. Optimize: Adapt AGP 7.3 namepace attribute 2. Optimize: Partial embedding logic 3. Fix: When the Application base class attachBaseContext() and onCreate(), Fragment base class setUserVisibleHint() are decorated with final, triggering java.lang.LinkageError problem in the subclass 4. Fix: Lifecycle methods of Fragment change the pointer, causing embedding compatibility issues 5. Fix: Runnable embedding compatibility issues 6. Fix: WebViewClient and okhttp3.WebScoketListener embedding methods do not limit parameters problem 7. Fix: native crash does not limit stack depth problem |
| Android 2.16.0 | 2023-07-14 | 1. Add: Custom execution unit. 2. Add: Support OkHttp3 WebSocket data collection. 3. Fix: When national encryption is enabled, the uploaded data is not compressed problem. 4. Fix: Small probability of triggering RejectedExecutionException problem during hot start. 5. Optimize: Additional information memory, remaining space show percentage. 6. Optimize: Provide isOperatorCollect() interface to control mobile operator collection. 7. Optimize: Filter WebView network cache data. 8. Optimize: Cache data when upload fails, enter the background, and crash occurs. 9. Optimize: Add timestamps to network, network errors, operations, pages, crashes, stalls, errors, and hot start counts. 10. Optimize: Remove code to get remaining space on SD card. |
| Android 2.15.8 | 2022-02-18 | 1. Add: Support national encryption. 2. Add: Custom operation methods. 3. Fix: Small probability of triggering ANR during hot start (2022-01-21) 4. Fix: Incorrect event data type (2022-01-14). |
| Android 2.15.7 | 2021-12-21 | 1. Add: The dial test function adds task polling and caching mechanisms. 2. Add: Support collecting X5 WebView request errors. 3. Add: Support mPaaS framework cross-application and apms request header data collection. 4. Fix: SDK embeds base class Activity or application Launcher using SingleTask + finish scenarios, triggering repeated hot start counts problem. 5. Fix: Some Activity not embedding causing inaccurate startup time problem. 6. Fix: Compatibility issues with RNFetchBlob network library. 7. Fix: SDK replaces okhttp3.EventListener causing the client to be unable to obtain its own EventListener problem, provide interface to control whether to replace ohttp3.EventListener. 8. Fix: OAID SDK version 26 or higher method changes causing crash problem. 9. Fix: SDK switch defect causing specific scenarios not to collect crashes, custom errors, and custom events problem. 10. Fix: Volley library HTTP error data not collected problem. 11. Optimize: Provide interface to close recognition of Hongmeng devices. 12. Optimize: URLConnection library not reading streams and not calling disconnect() does not collect data problem. 13. Optimize: WebView network data collection optimization. 14. Optimize: Reduce SDK's own code time-consuming during network data collection. 15. Optimize: Adaptation for uploading mapping files to platform 3.0. 16. Optimize: Custom startup supports calling endpoint methods before onResume(). 17. Optimize: Support collecting set apms request header data. |
| Android 2.15.6 | 2021-07-15 | 1. Add: Support identification of Hongmeng devices. 2. Add: Crash and stall callback interfaces. 3. Add: Support JS call custom errors and custom events. 4. Add: Support collecting oaid identifier. 5. Add: Support mPaaS RPC and H5 data collection. 6. Optimize: OkHttp network data collection. 7. Optimize: Automatically upload mapping for Gradle3.4.0 and above. 8. Optimize: Add Activity lifecycle methods to crash/stall trajectory. 9. Optimize: Native crash collection for all threads. 10. Fix: Delayed upload during stall causing process killing data loss problem. 11. Fix: Inaccurate hot start count when using custom startup method problem. 12. Fix: Small probability of gson NullPointerException problem. 13. Fix: When cross-application switch is turned off, do not collect response header date problem. 14. Fix: SDK collecting page data small probability stall problem. |
| Android 2.15.5 | 2021-04-07 | 1. Add: Network data supports collecting specified request headers and response headers information. 2. Add: Exception uuid, callback when triggering crash, stall, error. 3. Add: Support Flutter data collection. 4. Optimize: SDK switch logic. 5. Optimize: Fragment embedding logic (onPause embedding no longer calls isVisible). |
| Android 2.15.4 | 2021-01-22 | 1. Add: Provide interface to get Tingyun deviceId. 2. Optimize: Java crash supports collecting all thread stacks. 3. Optimize: Custom error data supports caching. 4. Fix: Embedding causes geetest SDK request error problem. 5. Fix: When adding interceptors to OkHttp3, there is a small probability of interceptors being null exception problem. 6. Fix: Application making network requests in the main process causing SDK aggregated trace exception affecting SDK data upload problem. 7. Fix: Small probability of session time less than 0 problem. 8. Fix: Crash main thread ID hardcoded to 0 problem. |
| Android 2.15.3 | 2021-01-07 | 1. Fix: Base class Activity implements lifecycle with the same name interface, when the subclass Activity does not override the lifecycle method, embedding causes crash problem. 2. Fix: Small probability of NullPointerException crash during network data collection. 3. Fix: Compilation error VM IOException. |
| Android 2.15.2 | 2020-12-10 | 1. Add: ICMPPing and MTR functions. 2. Optimize: Network access supports 5G. 3. Fix: When collecting network data during stall process, small probability of concurrent modification exception problem. 4. Fix: Using Huawei Scan SDK causes crash problem. 5. Fix: Using springframework network library, embedding okhttp causes crash problem. 6. Fix: Harvester is null causing crash problem due to small probability. |
| Android 2.15.1 | 2020-10-16 | 1. Add: Support React Native operation and page data collection. |
| Android 2.15.0 | 2020-07-24 | 1. Optimize: Webview collects data with Browser probe, supports 3.0 cross-application. 2. Optimize: Startup count statistics. |