Skip to content

MimiSDK 8.0.0 Migration Guide

This document outlines the various changes required to migrate to MimiSDK 8 from a previous 7.x.x version of MimiSDK.

What is new?

Added Headphone Identification mechanism

A mechanism for identifying the connected headphone has been added to the SDK as described in Connected Headphone Identification.

Added Test Type Configuration mechanism

Note: This feature is mostly only relevant in support of the Connected Headphone Identification feature.

A mechanism for retrieving the supported test types and their configuration from the Mimi backend.

val configurations = MimiCore.testsController.loadTestTypeConfiguration()
println("Is PTT supported: ${configurations.supported.ptt != null}")

Added MSDK Logging Configuration

A public MSDK logging configuration mechanism has been added.

Use the following snippet to enable MSDK logging:

io.mimi.sdk.core.util.Log.isEnabled = true

This logging is disabled by default.

Theming Changes

New color attribute mimiSuccessColor

A new color attribute called mimiSuccessColor has been added to Theme.Mimi.

Currently, this attribute is used in the PTT test to indicate the "Quiet" section of the noise indicator. If no color is set, it will default to #10D08B.

Removal of deprecated theming attributes

The following previously deprecated theming attributes have been removed from Theme.Mimi:

  • mimiEarPrintLineColor
  • mimiIllustrationColorHair
  • mimiIllustrationColorSkin
  • mimiIllustrationColorGray
  • mimiIllustrationColorDarkGray
  • mimiExcellentGradeColor
  • mimiGoodGradeColor
  • mimiAverageGradeColor
  • mimiLimitedGradeColor
  • mimiImpairedGradeColor
  • mimiNoGradeColor

These theming attributes are no longer used in the MSDK and should be removed from your app's custom theme.

Notable Required Migrations

Processing APIs - Migrating from activateSession(fitting) to activateSession(dataSource)

In MSDK 7.4.0 the activateSession(fitting)API was deprecated in favor of the new activateSession(dataSource) APIs.

In 8.0.0 it is now removed activateSession(fitting) entirely.

If you haven't migrated to the MimiPresetParameterDataSource APIs then we recommend reading that guide, then following the relevant migration steps.

Migrating from MimiRemoteConfiguration Remote Configuration API

The ConfigurationController has been removed, and also the associated the MimiRemoteConfiguration class.

If your integration was previously using the availableParadigms, this has been replaced by the new MimiTestTypeConfiguration which supplies the supported test types and their associated configuration.

val testTypeConfigurations = MimiCore.testsController.loadTestTypeConfiguration()

Migrating the TestFlowActivity launcher

The testType parameter has been removed from the TestFlowActivity launcher Intent factory function: intent().

It is no longer possible to specify the test type to launch as the appropriate test type is automatically determined by the MSDK.

If you were previously using the testType parameter, you should remove it from your TestFlowActivity launcher.