This page covers usage of select commissioning API features in the
Google Home Mobile SDK.

## Suppress commissionable discovery notifications

![Android Halfsheet Notification](https://developers.home.google.com/static/matter/apis/images/android-halfsheet-notification.png) *Figure 1: Example of an Android halfsheet notification*

By default, Google Play services on Android uses
"halfsheet" notifications that cover the bottom half of a mobile device's
screen to provide users with a proactive indication that commissionable
Matter devices are nearby.

To prevent interruptions while your app is in the foreground, you may
suppress these notifications by calling the
[`suppressHalfSheetNotification()`](https://developers.home.google.com/reference/com/google/android/gms/home/matter/commissioning/CommissioningClient.md.txt#public-abstract-taskvoid-suppresshalfsheetnotification)
method in the Mobile SDK. See the API documentation for more
information.

The suppression enabled by this API times out if your app is in the foreground
for more than 15 minutes. To re-enable suppression after a timeout, call
`suppressHalfSheetNotification()` again, otherwise halfsheet notifications will
start to appear.

An implementation of this API can be found in the
Google Home Sample App for Matter. See
[`HalfSheetSuppressionObserver.kt`](https://github.com/google-home/sample-apps-for-matter-android/blob/ee118020ca56c51e2231d6972902b949de5607d5/3p-ecosystem/src/main/java/com/google/homesampleapp/lifecycle/HalfSheetSuppressionObserver.kt)
for more information.

## Indicate support for Matter commissioning

If you are using the Mobile SDK to commission, you must
[add the app package name](https://developers.home.google.com/matter/integration/branding.md.txt#provide_identifying_information)
in the Google Home Developer Console, implement our Matter
APIs, and indicate that your app supports Matter
commissioning by handling the `ACTION_COMMISSION_DEVICE` intent.

Add the following `intent-filter` to the `application` declaration within your
`AndroidManifest.xml` file:

    <intent-filter>
        <action android:name="com.google.android.gms.metadata.MODULE_DEPENDENCIES" />
    </intent-filter>

See our
[sample app's manifest](https://github.com/google-home/sample-apps-for-matter-android/blob/ee118020ca56c51e2231d6972902b949de5607d5/3p-ecosystem/src/main/AndroidManifest.xml#L73)
for reference.

## App picker

![App picker](https://developers.home.google.com/static/matter/apis/images/app-picker.png)

![](https://developers.home.google.com/static/matter/apis/images/app-picker.png)

There are two ways your app appears in the app picker during the commissioning
process:

1. On the **Choose an app** screen.
2. If users select **Choose other app** , it will show on the **Other Installed
   Apps** screen.

### Suggested Apps

The app picker displays two suggested apps.

- The first is always Google Home app (GHA).
- The second is for the preferred app of the device maker, if it is defined in a Developer Console project associated with the VID or PID of the device. ![Device maker preferred commissioner app](https://developers.home.google.com/static/matter/apis/images/device-maker-preferred-commissioner-app.png)

There are two scenarios when the apps are on the **Choose an app** screen.

1. **Installed** - Play services check that the application supports the `ACTION_COMMISSION_DEVICE` intent filter. If the intent filter is missing, the user is directed to the Play store to update the app.
2. **Not Installed** - The user is directed to the Play store to install the app before continuing.