# Default Applications

> Set the default browser, dialer, SMS, wallet or launcher on managed Android Devices from your Applivery Policy, and stop users from changing them.

Source: https://docs.applivery.com/en/device-management/android/app-management/default-applications/  •  Last updated: 2026-09-11

**Key topics:** Default Applications, Android Enterprise Policies, Application types and scopes, Status reporting and non-compliance, Applivery, Android, Android Enterprise, Android Management API (AMAPI), Google, Google Play Store

---

**TL;DR:** Set the default browser, dialer, SMS, assistant, wallet or launcher from your Android Policy in Applivery, using a prioritized list of candidate Apps.

Android lets the user pick which App handles core system roles: which browser opens a link, which App places a call, which one receives SMS. On a corporate fleet that choice is rarely something you want to leave open. If half your Devices open corporate links in a browser you do not manage, or a technician answers work calls from a personal dialer, you lose both consistency and control.

**Default Applications** let you decide those roles centrally. You define which App should handle each system role, Applivery pushes it through the Android Management API (AMAPI) `defaultApplicationSettings` Policy field, and the user can no longer change it while the setting stays active.

Typical uses:

-   Force a corporate browser, such as Chrome, as the default browser.
    
-   Fix the dialer or the SMS App on company Devices.
    
-   Set the default voice assistant or digital wallet across a managed fleet.
    
-   Pin the launcher (Home) on Fully Managed Devices.
    

:::warning
Do not confuse this with **Persistent Preferred Activities**. AMAPI has an older mechanism, `persistentPreferredActivities`, that also pins an intent handler by default — used for kiosk scenarios, for example. Google states explicitly that `defaultApplicationSettings` and `persistentPreferredActivities` must **not** be configured for the same intent domain, such as web browsing, because the result is unpredictable.
:::

## How it works

Each default App you set is one entry in the `defaultApplicationSettings` array of the Policy, and every entry is built from three elements:

<table style="min-width: 50px;"><colgroup><col style="min-width: 25px;"><col style="min-width: 25px;"></colgroup><tbody><tr><th colspan="1" rowspan="1"><p>Element</p></th><th colspan="1" rowspan="1"><p>What it does</p></th></tr><tr><td colspan="1" rowspan="1"><p><strong>Type</strong> (<code>defaultApplicationType</code>)</p></td><td colspan="1" rowspan="1"><p>The system role you want to pin — browser, dialer, SMS, and so on. See the table below for every supported type.</p></td></tr><tr><td colspan="1" rowspan="1"><p><strong>Applications</strong> (<code>defaultApplications</code>)</p></td><td colspan="1" rowspan="1"><p>A prioritized list of candidate Apps, by <code>packageName</code>. AMAPI picks the first one on the list that is installed on the Device and valid for that role.</p></td></tr><tr><td colspan="1" rowspan="1"><p><strong>Scopes</strong> (<code>defaultApplicationScopes</code>)</p></td><td colspan="1" rowspan="1"><p>Where the setting applies: Fully Managed, Work Profile, personal profile, or a combination.</p></td></tr></tbody></table>

The prioritized list is what makes this practical across mixed hardware. List your preferred App first and a fallback second, and each Device resolves to whichever one it actually has.

For a non-system App to become the default, the fingerprint of its signing certificate on the Device must match the one obtained from the Google Play Store, or one of the entries declared in `signingKeyCerts` for that App in the Policy.

## Supported default application types

<table style="min-width: 50px;"><colgroup><col style="min-width: 25px;"><col style="min-width: 25px;"></colgroup><tbody><tr><th colspan="1" rowspan="1"><p>Type</p></th><th colspan="1" rowspan="1"><p>Description and requirements</p></th></tr><tr><td colspan="1" rowspan="1"><p><code>DEFAULT_ASSISTANT</code></p></td><td colspan="1" rowspan="1"><p>Voice assistant App. Only valid for <code>SCOPE_FULLY_MANAGED</code>. Requires Android 16+ on Fully Managed Devices.</p></td></tr><tr><td colspan="1" rowspan="1"><p><code>DEFAULT_BROWSER</code></p></td><td colspan="1" rowspan="1"><p>Default browser. Requires Android 16+.</p></td></tr><tr><td colspan="1" rowspan="1"><p><code>DEFAULT_CALL_REDIRECTION</code></p></td><td colspan="1" rowspan="1"><p>Call redirection App. Not applicable to <code>SCOPE_PERSONAL_PROFILE</code>. Requires Android 16+.</p></td></tr><tr><td colspan="1" rowspan="1"><p><code>DEFAULT_CALL_SCREENING</code></p></td><td colspan="1" rowspan="1"><p>Call screening App. Not applicable to <code>SCOPE_PERSONAL_PROFILE</code>. Requires Android 16+.</p></td></tr><tr><td colspan="1" rowspan="1"><p><code>DEFAULT_DIALER</code></p></td><td colspan="1" rowspan="1"><p>Phone dialer. Supported on Fully Managed Devices from Android 14/15, and across every management mode from Android 16.</p></td></tr><tr><td colspan="1" rowspan="1"><p><code>DEFAULT_HOME</code></p></td><td colspan="1" rowspan="1"><p>Launcher / home screen. Only valid for <code>SCOPE_FULLY_MANAGED</code>. Requires Android 16+.</p></td></tr><tr><td colspan="1" rowspan="1"><p><code>DEFAULT_SMS</code></p></td><td colspan="1" rowspan="1"><p>SMS App. Not applicable to <code>SCOPE_WORK_PROFILE</code>. Supported on company-owned Devices from Android 16.</p></td></tr><tr><td colspan="1" rowspan="1"><p><code>DEFAULT_WALLET</code></p></td><td colspan="1" rowspan="1"><p>Digital wallet App. Cross-profile role. Supported on company-owned Devices from Android 16.</p></td></tr></tbody></table>

:::info
Some roles, such as `DEFAULT_WALLET`, apply across profiles. On a company Device with a Work Profile you can set the default App either in the Work Profile or in the personal profile, but not in both at the same time.
:::

## Scopes

-   `SCOPE_FULLY_MANAGED`: applies to Fully Managed Devices (Device Owner).
    
-   `SCOPE_WORK_PROFILE`: applies to the Work Profile, both on company Devices with a Work Profile (COPE) and on personal Devices with a Work Profile (BYOD).
    
-   `SCOPE_PERSONAL_PROFILE`: applies to the personal profile on company-owned Devices with a Work Profile.
    

When you set a default App for `SCOPE_FULLY_MANAGED` or `SCOPE_WORK_PROFILE`, that App needs a matching entry in the **Applications** section of the Policy, with an `installType` other than `BLOCKED`. When the target scope is `SCOPE_PERSONAL_PROFILE`, you can only set preinstalled system Apps as defaults.

## Compatibility by management mode and Android version

<table style="min-width: 75px;"><colgroup><col style="min-width: 25px;"><col style="min-width: 25px;"><col style="min-width: 25px;"></colgroup><tbody><tr><th colspan="1" rowspan="1"><p>Management mode</p></th><th colspan="1" rowspan="1"><p>Android 14 – 15</p></th><th colspan="1" rowspan="1"><p>Android 16+</p></th></tr><tr><td colspan="1" rowspan="1"><p><strong>Fully Managed</strong></p></td><td colspan="1" rowspan="1"><p><code>DEFAULT_DIALER</code> only</p></td><td colspan="1" rowspan="1"><p>All supported types</p></td></tr><tr><td colspan="1" rowspan="1"><p><strong>Company-owned with Work Profile (COPE)</strong></p></td><td colspan="1" rowspan="1"><p>Not supported</p></td><td colspan="1" rowspan="1"><p>Work Profile: <code>BROWSER</code>, <code>CALL_REDIRECTION</code>, <code>CALL_SCREENING</code>, <code>DIALER</code>, <code>WALLET</code>.<br>Personal profile: <code>BROWSER</code>, <code>DIALER</code>, <code>SMS</code>, <code>WALLET</code>.</p></td></tr><tr><td colspan="1" rowspan="1"><p><strong>Personally-owned with Work Profile (BYOD)</strong></p></td><td colspan="1" rowspan="1"><p>Not supported</p></td><td colspan="1" rowspan="1"><p>Work Profile: <code>BROWSER</code>, <code>CALL_REDIRECTION</code>, <code>CALL_SCREENING</code>, <code>DIALER</code>.<br>Personal profile: not supported.</p></td></tr></tbody></table>

## Before you start

-   A Device running Android 14 or later. Android 16+ is recommended, since it unlocks every default App type.
    
-   A compatible Android Enterprise management mode — Fully Managed, COPE, or BYOD with a Work Profile — depending on the type of default App you want to set.
    
-   The candidate Apps added to the **Applications** section of the Policy with an `installType` other than `BLOCKED`, except for preinstalled system Apps in the personal profile.
    
-   The exact `packageName` of every candidate App.
    
-   Confirmation that the same Policy has no `persistentPreferredActivities` entry for the same intent domain, to avoid conflicts.
    

## Configuration

**Navigate to Policies**

Once in the [**Applivery Dashboard**](https://dashboard.applivery.io/), go to **Policies** 1 and select the Android Policy you want to modify.

**Add the candidate Apps**

In the **Apps** 2 section of the Policy, add every App you plan to use as a default — browser, dialer, and so on — with an `installType` other than `BLOCKED`, such as `AVAILABLE` or `FORCE_INSTALLED`.

![android apps](https://docs.applivery.com/int/_r2/media/09ac0a4e-3ad8-478f-9f15-3474973eec71/06e7e486-ca35-4452-a128-8c7c9c414ee0.png)

**Access All properties**

From the left-hand menu, click the **All properties** 3 section.

**Find Default Application Settings**

In the search field, type `defaultApplicationSettings` to locate the **Default Application Settings** configuration object.

**Define the default App**

Set the three values for this entry:

-   **Scope**: Fully Managed, Work Profile, or Personal Profile.
    
-   **Type**: Assistant, Browser, Call Redirection, Call Screening, Dialer, Home, SMS, or Wallet.
    
-   **Package Name**: the package name of the App you want as the default for the type you just selected.
    

![default app settings](https://docs.applivery.com/int/_r2/media/09ac0a4e-3ad8-478f-9f15-3474973eec71/e097a0c8-25e8-432f-9947-3ff4529989d1.png)

Repeat for every role you want to pin.

**Enable status reporting (optional)**

If you want feedback on which defaults actually landed, enable `defaultApplicationInfoReportingEnabled` inside `statusReportingSettings`.

**Save and sync**

Save the Policy and sync it with your Devices, either automatically on the next check-in or by forcing a manual sync from the Device detail page.

## Example Policy

This Policy sets Chrome as the default browser and defines a prioritized dialer list, with status reporting enabled:

```json
{
  "applications": [
    {
      "packageName": "com.android.chrome",
      "installType": "AVAILABLE"
    },
    {
      "packageName": "com.google.android.dialer",
      "installType": "AVAILABLE"
    },
    {
      "packageName": "com.samsung.android.dialer",
      "installType": "AVAILABLE"
    }
  ],
  "statusReportingSettings": {
    "defaultApplicationInfoReportingEnabled": true
  },
  "defaultApplicationSettings": [
    {
      "defaultApplicationType": "DEFAULT_BROWSER",
      "defaultApplications": [
        { "packageName": "com.android.chrome" }
      ],
      "defaultApplicationScopes": [
        "SCOPE_FULLY_MANAGED",
        "SCOPE_WORK_PROFILE"
      ]
    },
    {
      "defaultApplicationType": "DEFAULT_DIALER",
      "defaultApplications": [
        { "packageName": "com.google.android.dialer" },
        { "packageName": "com.samsung.android.dialer" }
      ],
      "defaultApplicationScopes": [
        "SCOPE_FULLY_MANAGED",
        "SCOPE_WORK_PROFILE",
        "SCOPE_PERSONAL_PROFILE"
      ]
    }
  ]
}
```

Here, AMAPI tries to set `com.google.android.dialer` as the default dialer. If that App is not installed on the Device, it falls back to `com.samsung.android.dialer`, following the priority order of the `defaultApplications` list.

## Status reporting

From Android 16 onwards, Device status reports include a `defaultApplicationInfo` field whenever `defaultApplicationInfoReportingEnabled` is turned on in `statusReportingSettings`. For each application type, the report tells you:

-   `packageName`: the App currently set as the default for that type, whether it was pinned by the Policy, set by the system, or chosen by the user.
    
-   `defaultApplicationSettingAttempts`: the outcome of each attempt to apply the Apps on your prioritized list. This is what you read when a higher-priority App did not take effect and you need to know why.
    

On Fully Managed Devices the report covers every application type. On Devices with a Work Profile it covers only the types supported for that profile.

## Non-compliance reasons

<table style="min-width: 50px;"><colgroup><col style="min-width: 25px;"><col style="min-width: 25px;"></colgroup><tbody><tr><th colspan="1" rowspan="1"><p>Reason</p></th><th colspan="1" rowspan="1"><p>What it means</p></th></tr><tr><td colspan="1" rowspan="1"><p><code>API_LEVEL</code></p></td><td colspan="1" rowspan="1"><p>The feature is not supported on the Device's Android version.</p></td></tr><tr><td colspan="1" rowspan="1"><p><code>MANAGEMENT_MODE</code></p></td><td colspan="1" rowspan="1"><p>The feature is not supported for the Device's management mode, or none of the scopes set in the Policy applies to that mode (specific reason <code>DEFAULT_APPLICATION_SETTING_UNSUPPORTED_SCOPES</code>).</p></td></tr><tr><td colspan="1" rowspan="1"><p><code>APP_NOT_INSTALLED</code></p></td><td colspan="1" rowspan="1"><p>None of the Apps on the prioritized list is installed on the Device.</p></td></tr><tr><td colspan="1" rowspan="1"><p><code>INVALID_VALUE</code></p></td><td colspan="1" rowspan="1"><p>At least one App is installed but the setting cannot be applied for another reason — the App is not valid for that role, for example. For the personal profile a generic <code>INVALID_VALUE</code> is reported, without revealing the install state of personal Apps.</p></td></tr></tbody></table>

## Important considerations

-   Never configure `defaultApplicationSettings` and `persistentPreferredActivities` for the same intent domain, such as web browsing, in the same Policy. The behavior becomes unpredictable.
    
-   Every candidate App must exist in the **Applications** section of the Policy with an `installType` other than `BLOCKED`, except for system Apps in the personal profile.
    
-   For non-system Apps, the signing certificate on the Device must match the one from the Google Play Store or an entry declared in `signingKeyCerts`.
    
-   Actual support depends on the Android version and the management mode of each Device. Check the compatibility table above before you roll anything out.
    
-   For cross-profile roles such as `DEFAULT_WALLET`, you cannot pin the default in the Work Profile and in the personal profile at the same time.
    
-   Once the Policy applies, the user cannot change the default App for that role manually while the setting stays active.
    

## Verification and troubleshooting

**Sync the Device**

After saving the Policy, sync the Device manually from its detail page in Applivery, or wait for the next check-in.

**Check the status report**

If you enabled `defaultApplicationInfoReportingEnabled`, review the Device status report to confirm which App ended up as the default for each type.

**Test it on the Device**

Trigger the matching action on the Device — open a link, start a call — and confirm it runs straight into the configured App, with no App chooser in between.

**Read the non-compliance details**

If the behavior is not what you expected, check the Device's non-compliance details (`API_LEVEL`, `MANAGEMENT_MODE`, `APP_NOT_INSTALLED`, `INVALID_VALUE`) to identify the cause.

**Re-check the App**

Confirm the candidate App is genuinely installed and that its `installType` in the Policy is not `BLOCKED`.

Default Applications turn a user preference into a managed setting. Combined with a prioritized candidate list, they give you one predictable behavior across a fleet that mixes hardware, Android versions and management modes, and they take the guesswork out of which App handles the roles your organization actually depends on.
