Change Log
All notable changes to this project will be documented in this file. Adheres to Semantic Versioning.
6.X Releases
6.5.xReleases - 6.5.06.4.xReleases - 6.4.06.3.xReleases - 6.3.06.2.xReleases - 6.2.06.1.xReleases - 6.1.06.0.xReleases - 6.0.0
5.X Releases
5.0.xReleases - 5.0.0
4.X Releases
4.5.xReleases - 4.5.0 | 4.5.1 | 4.5.2 | 4.5.34.4.xReleases - 4.4.04.3.xReleases - 4.3.04.2.xReleases - 4.2.04.1.xReleases - 4.1.04.0.xReleases - 4.0.0 | 4.0.1 | 4.0.2
3.X Releases
3.6.xReleases - 3.6.03.5.xReleases - 3.5.03.4.xReleases - 3.4.03.3.xReleases - 3.3.0 | 3.3.1 | 3.3.23.2.xReleases - 3.2.03.1.xReleases - 3.1.03.0.xReleases - 3.0.0
2.X Releases
2.2.xReleases - 2.1.02.1.0Releases - 2.1.02.0.0Releases - 2.0.0.Alpha.1 | 2.0.0.Alpha.3 | 2.0.0-beta.1 | 2.0.0-beta.3, 2.0.0-beta.3.1 , 2.0.0-beta.4, 2.0.0-beta.5, 2.0.0
6.5.0
Released on 2022-09-09.
Added
-
Additional test submission failure information shown to user.
Changed
- User registration UI now requires explicit user consent.
- Updated the HTE Wrapper to version 3.7.2_0.
-
Improved internal analytics properties for test submission failures.
Fixed
-
Addressed a number of issues affecting hearing test submission.
Deprecated
-
Nothing this time.
Removed
- Nothing this time.
6.4.0
Released on 2022-08-01.
Added
- New function
revokeHearingAssessmentConsenttoio.mimi.sdk.core.controller.UserControllerto allow the revoking of consent for hearing assessments. -
New helper function to
io.mimi.sdk.ux.util.extensionto simplifyViewenabled state alpha:View.setAlphaForEnabledState()
-
Additional internal tracking for the Fine Tuning feature.
Changed
-
Nothing this time.
Fixed
- Fixed a UI bug which caused the "Estimate your hearing" card to be incorrectly enabled.
-
Fixed a bug which was preventing the restart of hearing tests.
Deprecated
-
Nothing this time.
Removed
- Nothing this time.
6.3.0
Released on 2022-06-06.
Added
- Libprofile now provides the user with a selection of different personalization presets for the user to fine tune their audio personalization experience.
- The
PersonalizationControllernow has a functionloadUpDownPreset()to fetch theUpDownPresetpersonalization preset bundle. -
New helper functions to
io.mimi.sdk.ux.util.extensionto simplifyViewvisibility operations:-
View.show()andView.hide()respectively.Changed
-
-
Nothing this time.
Fixed
-
Nothing this time.
Deprecated
-
The
exportfunctionality provided by theTestsControlleris not appropriate for non-certified products and will be removed.Removed
- Nothing this time.
6.2.0
Released on 2022-05-13.
Added
-
The MSDK now provides an API to provide sounds personalization visualization data for the current user.
PersonalizationControllernow has avisualizationproperty, represented asPersonalizationVisualization.- It holds the personalization visualization data for the current user and is automatically updated to the latest value.
- The data is only indicative of the possible adjustments to sound personalization made by Mimi.
- Additionally, the
TestsControllersubmitTestForResultfunction now also returns same personalization visualization data in response to a test submission in theMimiSubmitHearingTestResponsepersonalizationVisualizationproperty. - The personalization visualization can be accessed via the new "Your Personalization" card from the user profile, and at the successful completion of an MT hearing test.
FragmentViewBindingDelegateclass andFragment.viewBindingextension which are intended to be used internally and should not be considered part of the public API.
Changed
- The
GroupControllerthrows aMemberNotInGroupExceptionwhen deleting a user who does not exist in a givenMimiGroup. - Allow setting all test volume values, by fixing the
VolumeAdjustmentSeekBarkeyProgressIncrementto1.
Fixed
- Fixed a bug which could cause backend API authorization failures in some circumstances.
- Fixed a bug which could cause unexpected audio volume changes due to UI touch events.
Deprecated
-
The new "Your Personalization" card replaces the previous card. This results in the deprecation of:
io.mimi.sdk.testflow.results.PersonalizationResultsBottomDialogFragmentio.mimi.sdk.testflow.results.PersonalizationResultsBottomDialogFragment
Removed
- Nothing this time.
6.1.0
Released on 2022-03-04.
Deprecated
- Interface
Signedinio.mimi.sdk.core.model.tests: Test Result signature verification is no longer supported. io.mimi.sdk.testflow.results.PersonalizationResultsBottomDialogFragmenthas been deprecated.
Updated
- Updated Kotlin to version
1.6.10. - The color of the waves in the background of the Sound Personalization card is defined by
mimiPrimaryTintColorNormal. - Updated okhttp to version
4.9.3.
Removed
signatureproperty inMimiMtTestResultResultsResponseandMimiPttTestResultResultsResponse. This is an MSDK Internal API: no migration steps will be provided.
Added
GroupControllerfor creating, deleting, activating and deactivatingMimiGroups as well as adding, removing, activating and deactivatingMimiGroupMembers of such groups.
6.0.0
Released on 2022-01-14.
Removed
-
The health flavor has been removed. This includes the following:
MimiPTTResultDetailsDialogFragmentMimiMTTResultDetailsDialogFragmentMimiTestResultsDialogFragmentMimiProfileFragment(Health SDK only)MimiProfileLauncher(Health SDK only)showReadMoreLinkparameter in Fragment.showDisclaimershowHearingHealthTipsparameter in MimiConfiguration
DisableOnTouchNestedScrollViewhas been removed.io.mimi.sdk.core.DEFAULT_PARAMETER_DELIVERY_INPUT_SETTLE_MShas been removed as the debounce time forParameterDeliveryMode.Discretehas no default.io.mimi.sdk.core.util.wtffunction has been removed as it was an unused internal function.io.mimi.sdk.ux.util.gmailIntenthas been removed. UseopenDefaultEmailAppinstead.io.mimi.sdk.ux.util.openEmailInboxhas been removed. UseopenDefaultEmailAppinstead.io.mimi.sdk.ux.util.UiUtilsextension functionsView.setGone()andView.setInvisible()have been removed. UseView.isGoneandView.isInvisiblefromandroidx.coreinstead.
Added
- Added 'submitNickname' method to
UserControllerfor updating/setting the nickname of a user. - Added
mimiEarPrintLineColorto set a custom color for Ear Print Artwork, defaults tomimiPrimaryTintColorNormal - Added
mimiNoGradeColorto set a custom color for results without a known grade.
Updated
io.mimi.sdk.ux.widget.TintedToggleButtonhas been renamed toio.mimi.sdk.ux.widget.MimiTintedToggleButton.io.mimi.sdk.ux.widget.SeekBarArchas been renamed toio.mimi.sdk.ux.widget.MimiSeekBarArc.- Prefixed internal Android resources (layouts, drawables etc) with
mimi_to avoid namespace clashes with host applications. - mimiButtonCornerRadius changed to 26dp
-
The following
Theme.Mimitheming items have changed:-
Removed
Theme.Mimi.AHTtheme
-
Renamed
earLeftColortomimiEarLeftColorearRightColortomimiEarRightColorexcellentGradeColortomimiExcellentGradeColorgoodGradeColortomimiGoodGradeColoraverageGradeColortomimiAverageGradeColorlimitedGradeColortomimiLimitedGradeColorimpairedGradeColortomimiImpairedGradeColor
-
Promoted
io.mimi.sdk.core.securestore.DataStoreclass has been made public, but with marked@MsdkInternalApi.
Demoted
-
Marked as
@MsdkInternalApi:io.mimi.sdk.core.DEVICE_MODEL_ID,io.mimi.sdk.core.ANDROID_OS,io.mimi.sdk.core.ANDROID_VERSIONproperties.io.mimi.sdk.core.adapter.RationalNumberAdaptersandio.mimi.sdk.core.adapter.RationalNumberAdapters.Factoryclasses.io.mimi.sdk.core.util.CryptoUtilsall functions.io.mimi.sdk.core.util.PersistentFieldclass.io.mimi.sdk.testflow.results.TestResultIssuesDialogFragment,io.mimi.sdk.testflow.results.model.TestResultIssueUiDataandio.mimi.sdk.testflow.results.model.TestResultIssueUiDataclasses.io.mimi.sdk.testflow.shared.showDisclaimerFragmentextension function
io.mimi.sdk.core.util.Log.enabledproperty has been made internal to thelibCoremodule.io.mimi.sdk.core.securestore.DataStoreconstructor has been made internal to thelibCoremodule.io.mimi.sdk.authflow.util.Utilshelper functions have been made internal to thelibAuthFlowmodule.io.mimi.sdk.testflow.steps.volumeadjustment.SystemTimeProvideras been made internal to thelibTestFlowmodule.io.mimi.sdk.testflow.shared.BottomDialogManagerhas been made internal to thelibTestFlowmodule.io.mimi.sdk.ux.flow.view.StepFragmenthas been made internal to thelibUxmodule.
Deprecated
5.0.0
Released on 2021-08-23.
Removed
AuthControllerclass and its instance in theMimiCoreobject has been removed. All the legacy functionality has been moved to theUserControllerinstead.TestsControllerListenerinsideTestControllerclass has been removed.ProcessingController.resetParams()method is now declared as a private method and hence no longer publicly available to integrators.PermissionControllerandExplanationDatahave been removed. Please manage Android permissions autonomously.io.mimi.sdk.core.CoroutineScope.executeTaskextension function has been removed. If still required, please implement your own equivalent.io.mimi.sdk.core.securestore.DataStoreis no longer part of the MSDK public API.io.mimi.sdk.core.util.PersistentFieldmade the constructor with aDataStoreparameter internal to thelibCoremodule.Environmentenum is now internal to thelibCoremodule.MimiCore.environmentis now MSDK only internal API and should not be used by partners.- Removed the ability to provide an
Environmentparameter from the public API when callingMimiCore.start(). Only the production environment is available. - Abstract classes
io.mimi.sdk.core.controller.BaseControllerandBaseControllerWithListenershave been removed. MimiCore.failedToRefreshTokenForUsercallback has been removed. Please note that now, theloadingStateof theUserController.mimiUserinstance, will be of typeLoadingState.Failurewith itscausefield set toMimiCoreException.ForciblyLoggedOut.io.mimi.sdk.core.controller.ResultCallbackhas been removed. It was used for the Java compatibility layer, which is no longer supported.io.mimi.sdk.core.model.Resulthas been removed. It was used for the Java compatibility layer, which is no longer supported.com.chauthai.swipereveallayout.SwipeRevealViewhas been removed fromlibprofile. It has been replaced bycom.chauthai.swipereveallayout.SwipeRevealLayoutin thelibuxmodule.io.mimi.sdk.core.model.personalization.Personalizaton.Modeis now internal tolibCore.io.mimi.sdk.core.controller.processing.ParamCacheis now internal to thelibCoremodule.io.mimi.sdk.core.DEFAULT_PARAMETER_DELIVERY_INPUT_SETTLE_MS. There is no longer a default, you should explicitly define an appropriate value.io.mimi.sdk.core.model.tests.*Responsepreviously marked asDeprecatedhas been moved and marked asMsdkInternalApi.Signedinterface removed fromMimiPTTTestResultDataandMimiMTTestResultData.- Default values for
earSymmetryandhearingGraderemoved fromMimiPTTTestResultandMimiMTTestResult. resultsErrorremoved fromMimiMTTestResult.MimiTestResultData.earType(): EarTypeextension helper function.HearingTest.Embedded.resultspreviously marked asDeprecatedhas been removed.io.mimi.sdk.testflow.shared.HearingGradehas been removed in favor ofio.mimi.sdk.core.model.tests.HearingGrade.- Marked
HearingGrade.colorImageas internal API. - Removed
DebugOptionsand associatedTestFlowActivity.intentfromio.mimi.sdk.testflow.activity.
Added
MimiPersonalizationRoutesealed class has been added. It is used to load a validPersonalizationwithinPersonalizationControllerclass.MimiAuthRoutesealed class has been added. It is used to provide a valid authentication type to theauthenticate()method inside theUserControllerclass.- Created
MimiObservableandMimiObserverclasses, to help informing about changes happening variables that are wrapped with it. - Added
MimiObservable.observe(observer:)andobserve(tag:, action:)methods to subscribe and listen to changes occurring on a specificMimiObservableobject. - Introduced
@MsdkInternalApiannotation. This annotation will be used to mark any classes or methods that despite being declared as public, their usage is restricted solely for internal purposes. - Added
LoadingStatesealed class to represent the loading state of a value dependent on some I/O operation. - Added
AsyncState<T>(value:, loadingState:)class to give an accurate asynchronous representation of theloadingStateof a visualvalueof the MSDK. - Added
MimiObservable<T>.asLiveData(coroutineScope:)andMimiObservable<AsyncState<T>>.valueAsLiveData(coroutineScope: )as convenience extension methods to mapMimiObservabletoLiveDataobjects. MimiCoreServiceshas been added as interface to define the services available inMimiCore.ProcessingSessionhas been added to encapsulate information about the ongoing processing session.MimiParameterApplicatorhas been added as interface to define an applicator that is used to apply a parameter value to an integrator.allowsUsageDataCollectionflag toMimiCoreto enable or disable usage data collection.- Added
Context.getApplicationLabel()to read the applications label. - Added MSDK internal analytics with
allowsUsageDataCollectionflag toMimiCoreto enable or disable usage data collection. - Added
results: List<MimiTestResultData>value toMimiTestResultinterface. - Added
openDefaultEmailApputil function inio.mimi.sdk.ux.util.ActivityUtils, which is used to open the default set Email application in the phone.
Updated
io.mimi.sdk.core.MimiCore.start()- the parameterctxhas been renamed tocontextfor clarity.manageAccountUrl()method insideUserControllerclass has been renamed touserAccountPortalUrl().latestTestResults()method insideTestsControllerclass has been renamed toloadLatestTestResults().authenticate(username: String, password: String): MimiUsermethod inside the legacyAuthControllerclass has been moved to theUserControllerclass and renamed toauthenticate(route: MimiAuthRoute): MimiUser.MimiTestResultData.earTypetype has been changed fromStringtoEarType.MimiTestResultData.warningshas been made nonnull. An empty list will be set when no warnings exist.HearingGradehad been added and is used onMimiTestResult.hearingGradeinstead of numeric scores.gmailIntentutil function inio.mimi.sdk.ux.util.ActivityUtilsmay throwNullPointerExceptionwhen no Gmail application can be found.openEmailInboxutil function inio.mimi.sdk.ux.util.ActivityUtilsmay throwActivityNotFoundExceptionorNullPointerExceptionif no appropriate email application can be found.
Deprecated
gmailIntentutil function inio.mimi.sdk.ux.util.ActivityUtils.openEmailInboxutil function inio.mimi.sdk.ux.util.ActivityUtils.
4.5.3
Released on 2021-09-27.
Updated
- Updated to version
3.5.1_0of the HTE.
4.5.2
Released on 2021-07-28.
Fixed
- Fixes crash with layout naming conflict.
4.5.1
Released on 2021-06-10.
Updated
- Updated to version
3.4.3_0of the HTE.
4.5.0
Released on 2021-05-21.
Added
- Display information and a warning to disable Audio Effects within the test flow.
Updated
- Client dependent configuration and order of test paradigms.
Fixed
- Connectivity interruption for wired and bluetooth headsets.
4.4.0
Released on 2021-05-07.
Added
- New
Your Personalizationcard inside theMimiProfileFragmentto inform users about their sound personalization. - After taking a valid MT Hearing Test, now users will be able to see their results right away.
PersonalizationResultsBottomDialogFragmentclass responsible for showing a detailed result description of the most recent hearing test taken by the user.MimiTestResultResponseand children matching the test result v2 format returned from the backend.MimiTestResultEarSymmetryandMimiTestResultEarSymmetryResponserepresenting which is the better ear that is taken into account for the overall test result grade.MimiTestResult.earSymmetryproperty to storeMimiTestResultEarSymmetrywith a backwards compatible default toUNKNOWN.
Updated
- Updated Theme.Mimi.AHT theme colors for better accessibility.
- Updated to version
3.4.2_0of the HTE.
Deprecated
MimiTestResultResponseand children as they will be merged withMimiTestResulton a breaking changes release.EmbeddedTestResultsis deprecated as it will be replaced by test result v2 format.showTipsForHearingutil function inio.mimi.sdk.testflow.results.utils.
4.3.0
Released on 2021-02-24.
Updated
- Deprecated
SwipeRevealViewbundled with libprofile.
Added
- Ability for users to see a list of previous/historical tests.
- Ability to paginate all of the users test results.
TestController.loadTestResults()that allows to fetch a paginated list of test results in chronological order.MimiPagedItemsinterface to wrap collections of items that are returned paged from the mimi backend.DispatcherProviderprovidingMain,DefaultandIOcoroutine dispatchers.SwipeRevealLayouthelper to reveal a second layout on swiping items. Bundled with libux.
4.2.0
Released on 2020-12-11.
Updated
- Updated to version
3.4.0_0of the HTE.
Added
Fragment.showDisclaimerthat allows to show disclaimer dialog from a Fragment class.
Fixed
- Keyboard overlapping input field at password registration on small devices.
- UI issue not displaying correctly the Creating Hearing ID card on small devices.
- UI issue not resizing correctly Hearing Test results issues card details for small devices.
- UI Issue not disabling correctly the Estimate Your Hearing ID card on the initial onboarding screen.
- Issue on test result details fragment with Hearing Loss Grade card not showing as selected initially for
Severegrades. - Issue on signup and login screens where users were able to type empty spaces on the email edit text field.
- Updated terms and conditions screen on the signup flow to be GDPR compliant.
4.1.0
Released on 2020-11-13.
Added
TestController.export()that allows to export and share PTT test results via the Android ShareSheet.
Fixed
- Issue not fetching correctly the latest Mimi Presets when submitting consecutive tests during the same session.
- Issue not transitioning the Profile header to the latest taken Test Paradigm on first load.
- Issue crashing the app on accounts with many taken Hearing Tests when dismissing too quick the
Hearing in SilenceBottom Sheet dialog fragment. - Delayed interruption if volume changed during a test while the App was paused.
- Several issues not theming correctly UI attributes of some onboarding and test flow layouts.
- Issue not showing correctly the error message when trying to sign up a user with an already taken email.
Removed
- Deprecated the
MimiConfiguration.alwaysShowHearingResultsflag. Changing its value will no longer have any effect.
4.0.2
Released on 2020-10-12.
Updated
- Updated to version
3.3.2_0of the HTE. - Updated Kotlin to version
1.4.10. - Deprecated
ProcessingController.resetParams.
Fixed
- Fixed compilation issue when updating to AndroidX ConstraintLayout library
2.0.0. - Fixed several UI issues affecting devices with smaller screen sizes.
- Fixed text color of the description on the HealthSDK onboarding screen.
- Issue not being able to submit a Hearing Test when the locale language and region were empty.
- Fixed onboarding header collapsing when clicking on navigation button, after multiples expand and collapse.
- Fixed header not swiping between PTT and MT after login.
- Fixed header not swiping between PTT and MT after click on create your hearing ID card.
- Fixed issues when updating to ConstraintLayout library
2.0.1. - Fixed header shows a loading state while fetching user's data.
- Fixed profile card list scrolling when header is expanded.
- Fixed showing specific header for user that has no hearing test results yet.
4.0.1
Released on 2020-08-26.
Fixed
- Internal bug fixing.
4.0.0
Released on 2020-08-12.
Added
- Ability to request embedded test results on submitting Tests with
submitTestResults(hearingTest: HearingTest, provideResults: Boolean). - Ability to handle new issue
Insight could not be computed. - Improvements to card descriptions.
Updated
ProcessingParameter.Readablehas been renamed toReadableProcessingParameter.ProcessingParameter. Writablehas been renamed toWritable ProcessingParameter.- Moved
HearingGradesDialogFragmentto TestFlow and renamed toMimiMTResultDetailsDialogFragment. - Moved
HearingInSilenceDialogFragmentto TestFlow and renamed toMimiPTTResultDetailsDialogFragment. - Moved
TestResultIssueUiDatato TestFlow. - Moved
TestResultIssuesDatato TestFlow. - Moved
TestResultIssuesData.uiData()extension to TestFlow. - Moved results
Utilsto TestFlow. - Moved
TestParadigm.testType()extension to TestFlow. - Moved
HearingGradeclass to TestFlow. - Moved
EventBusclass to UX. - Moved
NavigationEventclass to UX. - Moved
TestResultIssuesDialogFragmentclass to Testflow. - Moved
Date.formatDefaultDate()toio.mimi.sdk.ux.util. - Moved
BaseProfileContainerFragmenttoio.mimi.sdk.profile. - Updated to version
3.2.1_0of the HTE.
Fixed
- Issue with cards performing unwanted caching of results after logout.
- Issue with Authentication flow unexpectedly closing when back pressed.
Removed
- Deprecated
Insights,TestsController.insights(id: String)have been removed. TestController.submitTestsResults(hearingTest, callback)has been replaced byTestController.submitTestsResults(hearingTest, provideResult, callback).- Deprecated
UserControllerListener.didChange(mimiUser)has been replaced withUserControllerListener.didChange(oldUser, currentUser). - Deprecated
MimiHearingTestFragment.showHearingTipsButton,ConfigurationController.showHearingHealthTips,ConfigurationController.alwaysShowHearingResultsandConfigurationController.allowRemoteDeviceAuthorizationflags have been removed. - Unused
plotPointsfield underMimiMTTestResultData. - Removed
MimiHearingTestFragmentandMimiHearingTestLauncherclasses.
3.6.0
Released on 2020-06-16.
Added
- Ability for a user to take a PTT Test with
TestFlowActivity - Ability for a user to select the type of test to take inside
TestFlowActivity - Ability to display warnings and errors that occurred during a test on the profile and detailed results.
- Ability for anonymous users to use remote device authorization features.
- Ability to choose some precalibrated headphones during the PTT flow.
MimiRemoteConfigurationobject containing the available features for the current client.loadRemoteConfiguration()method andremoteConfigurationvariable keeping the latest valid value of theMimiRemoteConfigurationinsideConfigurationController.TestParadigmenum class.- Method
loadHeadphones(connectionType: Headphone.ConnectionType)to load the list of available precalibratedHeadphoneobjects insideTestsControllerclass. Headphoneobject insideMimiCoremodule.PermissionControllerutils class to manage system permissions.- `observeEventNotHandled(owner: observer:) utils LiveData extension function.
- New styles under
MimiCoremodule. RemoteConfigRetryInterceptorclass to fetch the initial remote configuration and the logic to retry it in case it fails.RECORD_AUDIOsystem required permission on the general manifest to record environment noise forPTTtests.ViewGroup.forEachChild(action:),View.setEnabledRecursively(enabled:)andImageView.loadImage(url: @DrawableRes placeholder:)UI utils methods.SnapOnScrollListenerandSnappingCardLayoutManagerclasses.
Updated
- Deprecated a number of initial configuration flags and methods inside
ConfigurationControllerclass and moved toMimiConfigurationinsideMimiCore. noiseReportvalue field insideHearingTestobject.- Moved
Eventclass to Core Utils package. - Improved overall inline documentation.
Fixed
- Several issues with interruptions when pause menu is open on the test flow screen.
- Issue with
MimiProfileFragmentandMimiHearingTestFragmentheader not updating correctly upon user login.
3.5.0
Released on 2020-03-27.
Added
- Ability to authenticate remote devices to
MimiProfileFragment. - Ability to authenticate remote devices to
MimiHearingTestFragment. showConnectDeviceDialog()toAuthFlowto authenticate remote devices.- Ability to request device authorization via
requestDeviceAuthorization()toAuthController. - Ability to authenticate using a
DeviceAuthorizationRequesttoAuthController. DeviceAuthorizationRequestmodel object to for supporting device authentication toMimiCore.MimiConfigurationobject to configure Mimi features, replacing theConfigurationController.start(ctx: environment: clientId: clientSecret: initialConfiguration:)toMimiCoreto support injecting aMimiConfiguration.
Updated
- Deprecated
configurationControllerinMimiCore.
Fixed
- Issue where Hearing Health Tips would incorrectly display for an unsupported locale.
3.4.0
Released on 2020-03-16.
Added
- Support for displaying PTT and MT results as well as new header functionality to swipe between them inside
MimiHearingTestFragment. - Support for displaying detailed PTT results and audiograms to
MimiHearingTestFragment. - Noise familiarity step before an MT Hearing Test to allow a user to experience the test audio.
- Ability to troubleshoot bluetooth connection during headphone disconnection interruption in a Hearing Test.
- Ability to exit a hearing test when interrupted due to headphone disconnection.
- Ability to load latest test results via
latestTestResults()toTestsController. MimiTestResultsmodel object that contains an MT and PTT test result encapsulated in theMimiMTTestResultandMimiPTTTestResultclasses objects.MimiTestResultErrorobject to handle errors or warnings that occurred when generatingMimiTestResultscontaining enumMTResultErrorwith all the known MT related server errors.MimiSDKExpiredExceptionobject to encapsulateMimiCoreExceptionsthat occurred due to the use of an outdated SDK version.BaseProfileContainerFragmentclass as a parent fragment for fragments that need to switch between onboarding and personalized state.TintedToggleButtoncustom object used on Beep & Noise setup screen inTestFlowActivity.
Updated
- Deprecated
insights()method insideTestsControllerto load legacy MT test results. Replaced bylatestTestResults(). - Removed
XmlFragmentclass used for Mimi launcher cards. Replaced byBaseProfileContainerFragment. - New graphic assets and animations on
MimiHearingTestLauncher
Fixed
- Issue where an interruption could fail to present correctly in
TestFlowActivity - Issue where a
StepFragmentcould fail to retain correctly during rotation.
3.3.2
Released on 2020-02-28.
Fixed
- Issue that could cause authentication to fail or sessions to expire.
3.3.1
Released on 2020-02-24.
Fixed
- Issue that could potentially cause authentication to fail and forcibly log out a user.
3.3.0
Released on 2020-01-28.
Added
- New Mimi User's
didChange(oldMimiUser, currentMimiUsermethod.
Updated
- Improved Activity state animations showing on the different Test, Login, Signup and Forgotten Password screens by migrating from
KyrietoLottieAnimations framework. - Improved Header EarPrint graphic. Now it is drawn by calculating the interpolated curves between 2 given sets of Bezier curve coordinates.
- Updated to version
2.2.1_0of the HTE
Fixed
- Deprecated old Mimi User's
didChange(mimiUser)method. Replacing method is mentioned above and should include both old and current instances of the Mimi User. - Issues with visual graphic glitches on Header transition between expanded and collapsed states.
3.2.0
Released on 2019-11-28.
Added
MimiHearingTestLaunchercard fragment allowing to easily launch the Hearing Test profile from anywhere.- Hearing Grades card under PersonalizationProfileFragment informing about user's hearing test results.
MimiProfileFragment.showHearingGradesCardvariable to configure whether the Hearing Grades card should be shown or not.MimiHearingTestFragment.showHearingTipsButtonvariable to configure whether the Hearing Grades card should be shown or not.- New color attribute
mimiSecondaryForegroundColorNormalunder UX styles. - New processing parameter delivery system. Now processing parameters can be sent to the processing handler by setting
ParameterDeliveryModes.CONTINUOUSorParameterDeliveryModes.DISCRETEmode, otherwise it will default toCONTINUOUS. The delay between these calls can also be set programmatically by modifyingProcessingController.config.discreteInputSettleTimeMs, otherwise it defaults to 200ms.
Updated
- Mimi Dark theme color parameter values.
- Mimi waveform logo colors.
- Text appearance on Mimi dialogs.
- New graphic assets for headphones and quiet setup environment screens on test flow.
- Improved localized strings.
Fixed
- Bug not updating progress bar correctly on practice round.
- Improved header graphic line work animation.
3.1.0
Released on 2019-11-07.
Added
- Forced logged out mechanism upon inconsistent user status with Backend.
- Improved logging message reminding to extend main
Theme.Mimistyle when applying a custom one over an activity or fragment. - Removed onRegistration callback parameter from
showSignupDialog()method.
Updated
- Migrated internal distribution system to AppCenter via bash scripts on CircleCI.
- Bumped to Gradle version
5.6.3. - Improved lottie drawables on Hearing Grades card.
- Improved localized strings.
Fixed
- Fixed different bugs related with thread concurrency and the user refresh method upon sign up.
- Bug crashing the app upon return from
openEmail()action. - Themed WarningHelper SnackBar appropriately.
3.0.0
Released on 2019-10-07.
Added
- Created Mimi Hearing Test Fragment variant, along with all needed classes and view models.
- Major refactor operations to reduce visibility of several exposed methods.
- Added Lottie Drawables support.
- Added debug option on sample app to mimic processing invalidation.
- Added debug option to log in with test Mimi accounts.
- Added new AHT theme on Profile sample app.
- Added new specific Theming for AHT app
- Added openEmail util method.
- Added links to ToU and PP on sign up screens.
- Added new broadcast notification events to inform about the current progress of the HT.
Updated
- Improved custom documentation and moved it to guide folder.
- Improved inline documentation of methods and classes.
- Improved substantially the Processing module. Refactored the ProcessingParameter class as well as processingHandler listeners.
- Bumped Profile and HTE modules to latest versions.
- Improved localized strings.
- Refactored ProcessingControllerListener to only inform UI observers about handler processing invalidation, parameter updates and failed get/set calls.
- Reshaped ProcessingParameters class to implement Readable and/or Writable interfaces depending on the type of processing parameter.
- Moved Throttler class to UX
- Bumped HTE Wrapper version to 2.0.0.
- Removed LuaScriptManager class.
Fixed
- Removed deprecated
getFittingRulemethod.
2.2.0
Released on 2019-08-20.
- Added new sign up functionality, delivered via
BottomSheetDialogFragments. - Improved significantly InterruptionsManager on Test Flow module, covering many edge cases like handle incoming calls, smoother transitions between interruptions and vector drawable assets.
- Refurbished and added old and new styling Themes.
- Added legal disclaimer dialog on Profile.
- Fixed UI bugs on header, device back navigation.
- Improved localized strings.
2.1.0
Released on 2019-07-25.
- Top-aligned onboarding cards.
- Improved theming.
2.0.0
Released on 2019-07-01.
- Fixed HT bug not uploading correctly tests.
- Improved look & feel of Profile Header.
-
Fixed bugs not showing updated User info on Profile cards.
2.0.0-beta.5
Released on 2019-06-24.
- Introduced new Profile V2 layouts.
- Strings and UI improved on TestFlow as well as HTE bug fixing.
- Added licenses on each submodule.
2.0.0-beta.4
Released on 2019-06-11.
- Updated release and versioning processes.
- Improved localized strings.
- Android X migration.
- Added Mimi logo on login screens.
- Fixed bug with Android 7 with TLS cipher.
- Moved utils method from Testflow to UX module.
- General Bug fixing.
2.0.0-beta.3.1
Hotfix version Released on 2019-05-29.
-
Hotfix version release built with version 0.7.1 from both Core and Profile modules. Main changes being:
- Fixed bug affecting authentication interception and proper management of token refreshment
- Automated clearing and handing of presets upon processing activation/deactivation
- Closing correctly http requests on unauthenticated responses
- Fixed bug with processing racing conditions
2.0.0-beta.3
Released on 2019-05-24.
- Added merge anonymous into logged in user mechanism.
- Added force update feature.
- Improved localized strings.
- Improved activity indicator animations.
- Fixed error banners on login and password reset screens.
- Diverse visual and behavioral bug fixing.
2.0.0-beta.1
Released on 2019-04-30.
- Hooked up UI components with internal processing logic.
- Improved theming and flow navigation.
- Moved HTE module to a separated github project.
- Added change environment feature for dev purposes.
- Refactoring and general bug fixes.
2.0.0.Alpha.3
Released on 2019-04-02.
- Features & fixes.
2.0.0.Alpha.1
Released on 2019-02-1.
- Initial release.