Change Log
All notable changes to this project will be documented in this file. Adheres to Semantic Versioning.
4.X Releases
4.0.x
Releases - 4.0.0
3.X Releases
3.6.x
Releases - 3.6.03.5.x
Releases - 3.5.03.4.x
Releases - 3.4.03.3.x
Releases - 3.3.0 | 3.3.1 | 3.3.23.2.x
Releases - 3.2.03.1.x
Releases - 3.1.03.0.x
Releases - 3.0.0
2.X Releases
2.2.x
Releases - 2.1.02.1.0
Releases - 2.1.02.0.0
Releases - 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
4.0.0
Released on 2020-08-10.
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.Readable
has been renamed toReadableProcessingParameter
.ProcessingParameter. Writable
has been renamed toWritable ProcessingParameter
.- Moved
HearingGradesDialogFragment
to TestFlow and renamed toMimiMTResultDetailsDialogFragment
. - Moved
HearingInSilenceDialogFragment
to TestFlow and renamed toMimiPTTResultDetailsDialogFragment
. - Moved
TestResultIssueUiData
to TestFlow. - Moved
TestResultIssuesData
to TestFlow. - Moved
TestResultIssuesData.uiData()
extension to TestFlow. - Moved results
Utils
to TestFlow. - Moved
TestParadigm.testType()
extension to TestFlow. - Moved
HearingGrade
class to TestFlow. - Moved
EventBus
class to UX. - Moved
NavigationEvent
class to UX. - Moved
TestResultIssuesDialogFragment
class to Testflow. - Moved
Date.formatDefaultDate()
toio.mimi.sdk.ux.util
. - Moved
BaseProfileContainerFragment
toio.mimi.sdk.profile
. - Updated to version
3.2.1_0
of 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.alwaysShowHearingResults
andConfigurationController.allowRemoteDeviceAuthorization
flags have been removed. - Unused
plotPoints
field underMimiMTTestResultData
. - Removed
MimiHearingTestFragment
andMimiHearingTestLauncher
classes.
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.
MimiRemoteConfiguration
object containing the available features for the current client.loadRemoteConfiguration()
method andremoteConfiguration
variable keeping the latest valid value of theMimiRemoteConfiguration
insideConfigurationController
.TestParadigm
enum class.- Method
loadHeadphones(connectionType: Headphone.ConnectionType)
to load the list of available precalibratedHeadphone
objects insideTestsController
class. Headphone
object insideMimiCore
module.PermissionController
utils class to manage system permissions.- `observeEventNotHandled(owner: observer:) utils LiveData extension function.
- New styles under
MimiCore
module. RemoteConfigRetryInterceptor
class to fetch the initial remote configuration and the logic to retry it in case it fails.RECORD_AUDIO
system required permission on the general manifest to record environment noise forPTT
tests.ViewGroup.forEachChild(action:)
,View.setEnabledRecursively(enabled:)
andImageView.loadImage(url: @DrawableRes placeholder:)
UI utils methods.SnapOnScrollListener
andSnappingCardLayoutManager
classes.
Updated
- Deprecated a number of initial configuration flags and methods inside
ConfigurationController
class and moved toMimiConfiguration
insideMimiCore
. noiseReport
value field insideHearingTest
object.- Moved
Event
class 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
MimiProfileFragment
andMimiHearingTestFragment
header 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()
toAuthFlow
to authenticate remote devices.- Ability to request device authorization via
requestDeviceAuthorization()
toAuthController
. - Ability to authenticate using a
DeviceAuthorizationRequest
toAuthController
. DeviceAuthorizationRequest
model object to for supporting device authentication toMimiCore
.MimiConfiguration
object to configure Mimi features, replacing theConfigurationController
.start(ctx: environment: clientId: clientSecret: initialConfiguration:)
toMimiCore
to support injecting aMimiConfiguration
.
Updated
- Deprecated
configurationController
inMimiCore
.
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
. MimiTestResults
model object that contains an MT and PTT test result encapsulated in theMimiMTTestResult
andMimiPTTTestResult
classes objects.MimiTestResultError
object to handle errors or warnings that occurred when generatingMimiTestResults
containing enumMTResultError
with all the known MT related server errors.MimiSDKExpiredException
object to encapsulateMimiCoreExceptions
that occurred due to the use of an outdated SDK version.BaseProfileContainerFragment
class as a parent fragment for fragments that need to switch between onboarding and personalized state.TintedToggleButton
custom object used on Beep & Noise setup screen inTestFlowActivity
.
Updated
- Deprecated
insights()
method insideTestsController
to load legacy MT test results. Replaced bylatestTestResults()
. - Removed
XmlFragment
class 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
StepFragment
could 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, currentMimiUser
method.
Updated
- Improved Activity state animations showing on the different Test, Login, Signup and Forgotten Password screens by migrating from
Kyrie
toLottie
Animations 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_0
of 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
MimiHearingTestLauncher
card fragment allowing to easily launch the Hearing Test profile from anywhere.- Hearing Grades card under PersonalizationProfileFragment informing about user's hearing test results.
MimiProfileFragment.showHearingGradesCard
variable to configure whether the Hearing Grades card should be shown or not.MimiHearingTestFragment.showHearingTipsButton
variable to configure whether the Hearing Grades card should be shown or not.- New color attribute
mimiSecondaryForegroundColorNormal
under UX styles. - New processing parameter delivery system. Now processing parameters can be sent to the processing handler by setting
ParameterDeliveryModes.CONTINUOUS
orParameterDeliveryModes.DISCRETE
mode, 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.Mimi
style 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
getFittingRule
method.
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.