[IMPORTANT] Reminder: Group id changed to com.testfairy and maven changed to maven.testfairy.com. read more....
[BUGFIX] Fixed a bug where launching the feedback form could crash the app.
- [BUGFIX] Provide only the feedback custom fields for inspection and validation.
- [BUGFIX] Fixed a bug where values of custom feedback form fields are forgotten after capture.
- [BUGFIX] Fixed a bug where some layouts don't render when video is enabled.
- [NEW] Users can now drag screenshot capture button around the screen.
- [IMPROVEMENT] Inside feedback form, screenshot modifications are gathered in one single screen now.
- [BUGFIX] Removed a repeatedly generated warning log.
- [BUGFIX] Fixed a bug where React Native navigation components ignored touches.
- [BUGFIX] Fixed a bug where RecyclerView instances didn't layout correctly when an Activity launches for the first time.
- [BUGFIX] Camera icon overlay when taking a feedback now retains systemUiVisibility flags properly
- [IMPORTANT] Reminder: Group id changed to com.testfairy and maven changed to maven.testfairy.com. read more....
- [BUGFIX] Fixed a crash where on some devices, detecting services produced null exceptions.
- [BUGFIX] Fixed a crash happening due to malfunctioning accelerometer sensors.
- [BUGFIX] Fixed false positive stacktrace logs during WebView capture on higher api levels.
- [IMPORTANT] SDK moved away from Bintray/JCenter and is now hosted in maven.testfairy.com.
- [IMPORTANT] Group id changed to
testfairy. Please follow these steps to adapt your project.
- [NEW] TestFairy SDK can now detect malfunctioning accelerometers and report them in sessions.
- [BUGFIX] Fixed black screenshots in feedbacks sent with Flutter plugin.
- [BUGFIX] Fixed timestamps in sent feedbacks.
- [BUGFIX] Services that launch their own processes are now detected with better accuracy.
- [NEW] Feedback form now supports dark mode.
- [NEW] Feedback forms can now be customized with various input fields.
- [IMPROVEMENT] Keyboard no longer obstructs feedback form content by default.
- [BUGFIX] Feedback form now respects safely touchable area reported by the operating system.
- [NEW] Added new API to intercept feedback messages before they are sent.
- [BUGFIX] Fixed missing web views in screenshots.
- [BUGFIX] Feedback overlay no longer steals the focus from the
- [BUGFIX] Fixed a null pointer exception when
setAttribute()is given null values.
- [BUGFIX] Fixed a bug where some sessions could not be started if
setUserId()is not called.
- [IMPROVEMENT] Hidden views in view trees improvement.
- [BUGFIX] Hidden views in dialogs are now blacked out at correct locations in screenshots.
- [IMPROVEMENT] Improved performance.
- [NEW] Added new overloads of
showFeedbackForm()to be able attach screenshots directly.
- [BUGFIX] Fixed a crash happening on api level 24-25 when video is enabled.
- [BUGFIX] Dismissing the feedback form now respects previous activity's window flags.
- [BUGFIX] Capture overlay would sometimes stay on screen even after feedbacks are sent.
- [BUGFIX] Removed additional information from being displayed on timeline after EditText lost focus.
- [NEW] Added new feedback options to be able to configure feedback form button visibilities.
- [IMPROVEMENT] Flutter screenshots are now taken faster when there are no hidden widgets.
- [BUGFIX] Flutter screenshots now properly work on api level 24 and 25.
- [BUGFIX] Feedback form now correctly places itself in a safe area when its window is translucent.
- [BUGFIX] A newly stopped session no longer hides feedback screenshot capture overlay.
- [BUGFIX] Fixed a rare crash happening during view focus change.
- [BUGFIX] Fixed a rare condition where screenshots are not removed from the submitted feedback on low-end devices.
- [BUGFIX] Fixed log collection hang on apps with heavy logging.
- [BUGFIX] Feedback overlays are now always drawn in front of the activity.
ConstraintLayoutchildren now render correctly during a session.
hideView()no longer pause video if not necessary.
- [NEW] Interactions in scrollables are now properly detected in Flutter apps.
- [BUGFIX] Fixed a crash happening after long pauses in background.
- [BUGFIX] Fixed a bug in screenshots where some hidden views are painted black even when they are already obstructed.
- [IMPROVEMENT] Improved Flutter user interactions with scrollable widget keys. (only for Dart2)
- [BUGFIX] Fixed a race condition in feedback form which caused screenshot button to disappear.
- [BUGFIX] Fixed a bug where feedback screenshots were too big for upload.
- [BUGFIX] Fixes duplicate user interactions in Flutter.
- [IMPROVEMENT] Reduced screen capture battery and memory consumption.
- [BUGFIX] Screenshots now include dialogs.
- [BUGFIX] Fixed feedback dialog theme for apps that override default Material theme.
- [BUGFIX] Fixed an issue where the app crashes after resume from background.
- [BUGFIX] Removed duplicate interactions from timeline for Flutter apps.
sendUserFeedback()now supports attaching bitmaps.
- [NEW] Added an overload of
takeScreenshot()which returns the captured
- [NEW] Session timeline now shows scroll events for common scrollable views.
- [BUGFIX] Fixed a crash happening during shake recognition.
- [NEW] Added
installFeedbackHandler()for shake gesture detection without calling
- [BUGFIX] Fixed a bug where session lengths are reported incorrectly after a background timeout.
- [BUGFIX] Fixed video capture bug in some cases where ConstraintLayout is being used.
- [IMPROVEMENT] Improved text extraction from a view tree for React Native.
- [IMPROVEMENT] Added
TestFairy.updateLocation()support for all sessions.
- [BUGFIX] Fixed a bug where some crashes are reported twice or never.
- [BUGFIX] Fixed a rare crash during auto update occurring on JAR releases.
- [BUGFIX] Added limit on number of logs sent out to prevent endless loops of log writing.
- [IMPROVEMENT] Minor performance improvements.
- [BUGFIX] hideView() now supports multiple views using the same id.
- [BUGFIX] Flutter screenshots now work as expected.
- [NEW] Added support for HTTP call headers and bodies during network logging.
TestFairy.log()now behaves the same as native Android logging methods.
- [BUGFIX] Fixed a bug where some sessions didn't finalize at the correct time point.
- [BUGFIX] Fixed Flutter screenshots on resumed sessions.
- [IMPROVEMENT] View ids in view tree are now reported as resource strings instead of integers.
- [IMPROVEMENT] EditText focus detection.
- [BUGFIX] Fixed duplicate user interactions in timeline.
- [BUGFIX] Improved performance for video when there are hidden views.
- [IMPROVEMENT] User interactions in the timeline now show view id resource strings.
- [IMPROVEMENT] SDK now uses a more efficient thread pool.
- [BUGFIX] SDK dialogs now use a standard material theme.
- [BUGFIX] Improved video capture when hidden views are not known before
- [NEW] Specify a policy to toggle encryption for logs and video.
- [BUGFIX] Touch events in dialogs are now recognized properly.
- [IMPROVEMENT] Reduced amount of network calls made.
- [NEW] Customize Auto-Update and Provide Feedback dialog colors.
- [IMPROVEMENT] Improved screenshots and video recording algorithm.
- [BUGFIX] Removed legacy library org.apache.http.legacy from manifest.
- [IMPROVEMENT] Refactored auto update module further to comply with Play Store guidelines.
- [BUGFIX] User feedbacks now also grab session attributes just like feedback form.
- [IMPROVEMENT] Refactored auto update module to comply with Play Store guidelines.
takeScreenshot()now works even when video is disabled.
- [IMPROVEMENT] Added more video network optimizations for 4K phones.
- [BUGFIX] Feedback screenshot editor supports translucent status bars.
- [NEW] Added a way to provide a default text as feedback description.
- [BUGFIX] Notch padding is now correctly recognized by the feedback form.
resume()calls are now reported in the session dashboard.
- [BUGFIX] Hidden
WebViewinstances no longer obstruct full screen game screenshots.
- [BUGFIX] Fixed a crash due to a race condition during multiple lifecycle changes in a short amount of time.
logThrowable()now warns when its argument is null.
- [BUGFIX] Fragments and app bar visibility.
- [BUGFIX] Fixed a null pointer exception due to missing manifest entry for
- [NEW] Fullscreen
SurfaceViewscreenshots and support for latest Unity releases for API level 26+.
- [IMPROVEMENT] Performance update for existing screen recordings.
- [BUGFIX] Complaint class names in SDK binary to support case insensitive file systems during builds.
- [NEW] Feedback form redesign and ability to decide where to take a screenshot.
- [BUGFIX] Fixed a few cases where blinking dot didn't appear.
- [IMPROVEMENT] Non-button click events are now reported in the timeline with human friendly view names.
- [BUGFIX] Unsent feedbacks are now attached to the correct session and sent once.
- [BUGFIX] Apps with heavy UI thread use no longer block screenshots.
- [BUGFIX] Fixed a crash on resume when sessions don't listen for metrics.
- [BUGFIX] Blinking-dot now works online, offline and on auto update skip.
- [BUGFIX] External screenshots are now attached properly to the feedbacks.
- [BUGFIX] Screenshots with hidden
WebViewcontent are now captured as often as regular screenshots (api level 23+).
- [NEW] Added an option for a blinking red dot during session recording.
- [NEW] Added consumer proguard rules.
- [BUGFIX] Sensor events are now muted properly after session stops.
- [BUGFIX] Unsent feedbacks are now attempted for a retry.
- [BUGFIX] Native crash reports properly formats CPU register values.
- [BUGFIX] Fixed
- [BUGFIX] Session cap in background is now handled properly.
- [BUGFIX] Crashes report backups are now sent correctly after restart if they fail on first attempt.
- [NEW] It is now possible to hide DOM elements inside a WebView by using CSS selectors on API level 23+ (experimental).
- [NEW] Incorrect app manifest configurations now yield a helpful warning log.
- [BUGFIX] Feedbacks no longer have missing screenshots on slow devices.
- [BUGFIX] Logs reported to SDK are now properly prepended to next session.
- [BUGFIX] Fixed background session timeout delays.
- [BUGFIX] Fixed an unchecked null condition for sessions with unlimited caps.
- [BUGFIX] Fixed a case where already timed out sessions mistakenly timed out again.
- [BUGFIX] Timed out sessions due to long inactivity are handled correctly.
- [NEW] TestFairy now recognizes long and double clicks.
- [BUGFIX] Very long sessions in the background are properly recognized on Android 8+.
- [NEW] Translations for Portuguese
- [NEW] Feedbacks can now be verified prior to submission with custom verification rules
- [NEW] Native crashes are now reported in human readable form.
- [IMPROVEMENT] Auto update forces TLS 1.2 on all API levels.
- [BUGFIX] Timed out sessions now report crashes properly.
- [IMPROVEMENT] Removed legacy http client dependency.
- [BUGFIX] Feedback form would freeze under rare conditions.
- [IMPROVEMENT] Android 10 support.
- [IMPROVEMENT] TestFairy SDK no longer requires external storage permissions for auto-update.
- [BUGFIX] Flutter now shows screenshots in feedback form.
- [BUGFIX] Automatic disabling of screenshots during low memory conditions.
- [BUGFIX] Fixed cases of missing screenshots upon feedback.
- [NEW] Added
TestFairy.disableAutoUpdate()to be able to ignore new version prompts.
- [IMPROVEMENT] Trying to add audio before begin() now properly shows a warning.
- [BUGFIX] Fixed a bug where dismissing the auto update dialog sometimes caused a crash.
- [BUGFIX] Fixed a crash that occurs when the screen size changes in Unity.
- [NEW] Support for hidden views in Flutter.
- [BUGFIX] Fix for a rare concurrent modification exception in sensors.
- [NEW] New method logThrowable(String stacktrace).
- [BUGFIX] Auto-update dialog is now deferred if app is in background.
- [BUGFIX] Fixed missing sessions after consecutive stop/start calls.
- [BUGFIX] Fixed a crash due to accessibility enabled TextViews.
- [BUGFIX] Shorten long stack traces caused by stack-overflow exception prior to sending.
- [NEW] Added installCrashHandler() to enable TestFairy as a crash handler, without Insights or Feedback.
- [BUGFIX] Support for AppBar in screenshots.
- [NEW] Support for end-to-end encryption using RSA public key. Please see docs.
- [BUGFIX] Added support for Android Q.
- [NEW] Support for sending diagnostic audio recordings using addAudioRecording().
- [IMPROVEMENT] Persistentcy of session attributes.
- [IMPROVEMENT] Handled out of rare memory allocation errors.
- [NEW] New network layer, resulting in a much smaller SDK footprint.
- [BUGFIX] Timestamp for feedbacks sent while offline has been corrected.
* [NEW] New and improved network code.
TestFairy.getDistributionStatus(...) to query about the distribution status of this build, Read More...
* [NEW] Support
org.apache.http.legacy Android P.
* [IMPROVEMENT] Auto Update will open web browser if package install permissions are missing.
* [NEW] Support adaptive icons for Android O.
* [BUGFIX] Fix a rare crash that was happening on Android O during an auto update if the app has no REQUEST_INSTALL_PACKAGES permission.
* [NEW] Remove tests layouts files from the SDK.
* [BUGFIX] Fix session attributes in case of crash and no active TestFairy session.
* [NEW] Programmatically enable / disable Crash Reporting.
* [NEW] Programmatically controll Video Recording.
* [NEW] Programmatically controll Recorded metrics.
* [NEW] Programmatically controll Session length.
* [NEW] Session attributes will be attached into a crash & feedback even if there is no TestFairy session.
* [NEW] Added new API method
* [NEW] Programmatically enabled/disable feedback form
- [BUGFIX] Auto Update bug fix for new Android versions
- [NEW] Developers can programmatically display feedback form using
- [NEW] Developer can now disable crash handler by using option
- [NEW] Views that are out of screen do not make it to Inspect View Tree to improve performance
- [BUGFIX] Descendants of hidden views do not make it to Inspect View Tree
- [BUGFIX] Improved
- [BUGFIX] hideView performance
- [BUGFIX] Hidden buttons do not appear in timeline
- [BUGFIX] In rare cases, feedback with no screenshot would crash.
- [IMPROVEMENT] TestFairy.log() function can be used even if logcat is disabled in the build settings.
- [NEW] TestFairy Network support added see Log Network.
TestFairy.logThrowable(Throwable)added, it will send Throwable to TestFairy. More information
- [IMPROVEMENT] We improved the video recording during a crash, now you can see the latest frame of your app during and after the crash.
- [IMPROVEMENT] We filter out redundant logs, which will not be sent to the server. This will reduce redundant work from your app.
- [IMPROVEMENT] Performance improvements.
- [IMPROVEMENT] @Deprecated IDENTITY_TRAIT_*
- [BUGFIX] Capture main stacktrace for ANR detection
- [BUGFIX] Handle null Views when calling
- [BUGFIX] Add framework detection
- [BUGFIX] Crashes with Auto Update Activity
- [NEW] Upload files associated with your session with our new API.
- [IMPROVEMENT] Performance improvements.
TestFairy.setServerEndpointcan get a simple url format (for example "app.testfairy.com").
- [BUGFIX] Minor bug fix for enterprise users when calling
- [NEW] Support for offline feedbacks, in case of no connectivity the feedbacks will be stored to disk, it will be sent at the beginning of the next session.
- [NEW] Support for server url redirect (only for private clouds).
- [IMPROVEMENT] Fix gradle build warning
- [BUGFIX] Fix getNetworkInfo crash on Android 7.
- [BUGFIX] Fix video recording for Cordova.
- [IMPROVEMENT] Touch recorder support for android 7
- [IMPROVEMENT] Minor security fixes for Veracode approval
- [NEW] Button clicks will be recorded and visible in session Overview timeline.
- [IMPROVEMENT] User interactions will be recorded even if the view recorder is disabled.
- [BUGFIX] Fix wrong app name issue.
- [New API] Use
TestFairy.setUserId(String userId)to tell as who is the current user, it will help you to find the user in the TestFairy dashboard. More information.
- [New API] Use
TestFairy.setAttribute(String key, String value)to add additional data to the current session. More information.
- [BUGFIX] Correlation ID fixes related to session timing and session update.
- [BUGFIX] Fixed WebView screenshot capturing bug (Android 5 or later).
- [BUGFIX] Fix missing logs from some Android 5 devices.
- [NEW] Inspect element will show dialogs and toasts.
- [IMPROVEMENT] Logs will be recorded only after the session started, timestamp and sorting are improved.
- [NEW] Callback when a session has started.
- [BUGFIX] Improved VisualSupport.
- [BUGFIX] Increased buffers to help app with log bursts.
- [NEW] Support for VisualSupport.
- [IMPROVEMENT] Minor performance improvement on inspect element component.
- [IMPROVEMENT] Auto Update is supported for Android 7 and targetSdkVersion > 23 .
- [BUGFIX] Fix sessions that was detected as on background from the first seconds.
- [BUGFIX] Fix a bug related to TextureView screenshot while the app in the background.
- [NEW] We added an API for stopping sessions, so you can stop and restart session according to your own specific logic See java doc.
- [BUGFIX] We fixed a minor memory-leak.
- [BUGFIX] Fix double start session issue
- [IMPROVEMENT] - Auto Update behaviour improved for apps that has services.
- [IMPROVEMENT] When there is no connection and tester tries to send a feedback, an error messgae is shown.
- [IMPROVEMENT] Multiple clicks on the send feedback button will send it only once.
- [BUGFIX] NullPointerException exceptions fixed
- [BUGFIX] Drawing on feedback screenshot will work on devices with disabled animation.
- [NEW] A new session can be created when app is back in foreground.
- [BUGFIX] Feedback module can now be initialized without an existing activity.
- [NEW] Adaptive screenshot interval - When heavy work detected on the UI thread, screenshot interval is increased automatically.
- [BUGFIX] Fix auto update and feedback for React Native.
- [BUGFIX] Fix auto update and feedback for Unity.
- [BUGFIX] Fix auto update and feedback for Adobe Air.
- [BUGFIX] Fix auto update and feedback for Xamarin.
- [BUGFIX] Fix auto update and feedback for PhoneGap/Cordova.
- [BUGFIX] Fix auto update and feedback for Titanium.
- [BUGFIX] Attach screenshot checkbox behaviour
- [NEW] New UI for feedback module.
- [NEW] Added an option to add screenshot to feedbacks and have screenshots sent to JIRA automatically.
- [NEW] Added an option to draw on screenshot.
- [NEW] Feedback now contains screen name (actvity name).
- [NEW] Screen Name (activity name) is now sent to JIRA automatically via API.
- [IMPROVE] Improved Logcat reader performance.
- [NEW] Added confirmation dialog before auto update.
- [BUGFIX] Support for >2GB apk auto-update downloads.
- [BUGFIX] Cancel download during auto update.
- [NEW] Added log() method, to send logs to TestFairy without passing logcat.
- [BUGFIX] Word-wrapping when filing in a feedback.
- [BUGFIX] Changing orientation during 'Would you like to provide feedback' dialog disabled it.
- [BUGFIX] Fixed hints in feedback form under certain Android themes.
- [BUGFIX] Feedback dialog fixed.
ACCESS_WIFI_STATEis no longer mandatory, More information.
- [NEW] Detect sessions recorded from an Android service.
TestFairy.setScreenName(String screenName)function added, for more information SDK reference.
TestFairy.addEvent(String event)added to the SDK,
- [BUGFIX] Session videos are now supported on Android N.
- [BUGFIX] All Proguard warnings are fixed.
- [NEW] Customize feedback form with optional/mandatory email field.
- [NEW] Request callback from feedback form upon success, failure or cancellation.
- [NEW] Optionally configure a URL to open instead of built-in feedback form. More information.
- [BUGFIX] Fixed memory leak on switching activities.
- [NEW] Auto-update builds if newer is available.
- [NEW] Auto-update detects non-upgradable builds (ie, downloaded from Play Store).
- [NEW] User can decide not to upgrade, and keep sending metrics on old build.
- [BUGFIX] Fixed warnings when using Proguard.
- INITIAL NON-BETA RELEASE.
Last updated on 2021-04-28