Permissions

Certain features of the Mimi SDK require additional permissions, which require you to modify your Info.plist with permission keys. The system will then use the key in the alert presented to a user when the specific subsystem is attempted to be accessed.

Apple enforces these rules statically when uploading to App Store Connect; meaning that even if the code is never executed, the mere reference triggers the analyzer to require the permission keys to be present. This means that in order to integrate Mimi SDK, you are required to add these permission keys.

Required Permissions

Microphone Permission

Certain Hearing Tests require access to the microphone in order to monitor the ambient noise around the user. Meaning, we require NSMicrophoneUsageDescription to be present in your Info.plist.

If you do not set this, the application will crash whenever a hearing test runs which attempts to monitor the ambient noise.

We suggest a simple explanation such as:

Monitoring ambient noise during hearing tests requires the microphone.

Camera Permission

We offer the ability to authenticate remote Mimi-compatible devices using a QR code, which requires access to the camera. This feature has to be explicilty enabled in a MimiConfiguration and is disabled by default. However, even if you don’t wish to use the feature, the NSCameraUsageDescription key still has to be present in your Info.plist. In such a case, we recommend keeping the description string as generic as possible.

Wrapping it up

Your Info.plist should have the following entries:

<key>NSMicrophoneUsageDescription</key>
<string>Monitoring ambient noise during hearing tests requires the microphone.</string>
<key>NSCameraUsageDescription</key>
<string>Log in to your other Mimi devices by scanning a QR code with the camera.</string>