Konfigurasi aplikasi

Beberapa aplikasi yang didesain untuk perusahaan menyertakan setelan bawaan yang disebut konfigurasi terkelola yang dapat dikonfigurasi oleh admin IT dari jarak jauh. Misalnya, aplikasi mungkin memiliki opsi untuk hanya menyinkronkan data saat perangkat terhubung ke Wi-Fi. Semua set solusi harus dapat diberikan kepada admin IT untuk menentukan konfigurasi terkelola dan menerapkannya ke perangkat.

Diagram di bawah menggambarkan beberapa tahap utama pengelolaan konfigurasi terkelola dengan ringkasan opsi yang tersedia melalui Google Play EMM API.

Memeriksa apakah aplikasi mendukung konfigurasi terkelola

Gunakan Products.getAppRestrictionsSchema untuk menentukan apakah aplikasi mendukung konfigurasi terkelola. Berikut adalah contoh yang menggunakan Library Klien Google Play EMM API untuk Java.

public AppRestrictionsSchema getAppRestrictionsSchema(String enterpriseId,
    String productId, String language) throws IOException {
  return androidEnterprise
     .product()
     .getAppRestrictionsSchema(enterpriseId, productId, language)
     .execute();
}

Semua aplikasi menampilkan skema batasan aplikasi (konfigurasi terkelola). Jika panggilan menampilkan skema kosong, berarti aplikasi tidak mendukung konfigurasi pengelolaan. Jika panggilan menampilkan skema yang berisi serangkaian pembatasan, berarti aplikasi mendukung konfigurasi terkelola. Misalnya, aplikasi yang memiliki properti untuk mengaktifkan pencetakan jarak jauh melalui VPN dapat menampilkan respons berikut ke Products.getAppRestrictionsSchema.

    {
      "kind": "androidenterprise#appRestrictionsSchema",
      "restrictions": [
        {
          "key": "printing_enabled",
          "title": "Enable printing",
          "restrictionType": "bool",
          "description": "Allow user to print from the app",
          "defaultValue": {
            "type": "bool",
            "valueBool": true,
          }
        },
        {
          "key": "vpn_configurations",
          "title": "VPN configurations",
          "restrictionType": "bundle_array",
          "description": "List of VPN configurations",
          "nestedRestriction": [
            {
              "key": "vpn_configuration",
              "title": "VPN configuration",
              "restrictionType": "bundle",
              "nestedRestrictions": [
                {
                  "key": "server",
                  "title": "VPN server host",
                  "restrictionType": "string"
                },
                {
                  "key": "username",
                  "title": "VPN account username",
                  "restrictionType": "string"
                }
              ]
            }
          ]
        }
      ]
    }

Menentukan konfigurasi terkelola

Untuk aplikasi yang mendukung konfigurasi terkelola, Anda dapat mengizinkan admin IT untuk menyetelnya dari konsol EMM dengan menyematkan iframe konfigurasi terkelola atau dengan mengembangkan UI Anda sendiri.

Opsi 1: Menyematkan iframe konfigurasi terkelola

Cara termudah untuk mendukung konfigurasi terkelola adalah dengan menyematkan iframe konfigurasi terkelola ke konsol EMM. iframe mengambil skema konfigurasi terkelola untuk aplikasi tertentu, dan memungkinkan admin IT menyimpan, mengedit, dan menghapus profil konfigurasi kustom. Anda dapat menggunakan Play EMM API untuk menerapkan profil khusus ke perangkat pengguna. Untuk mempelajari lebih lanjut tentang iframe dan cara menambahkannya ke konsol, lihat iframe konfigurasi terkelola.

Opsi 2: Membuat UI Anda sendiri

Dengan menggunakan konfigurasi yang ditampilkan dari Products.getAppRestrictionsSchema, Anda dapat membuat UI sendiri yang memungkinkan admin IT mengelola konfigurasi aplikasi.

Menerapkan konfigurasi terkelola

Untuk menerapkan konfigurasi terkelola ke perangkat, DPC harus terintegrasi dengan DPC Support Library, seperti yang dijelaskan dalam Membangun pengontrol kebijakan perangkat. DPC Support Library menangani delegasi ke Google Play secara transparan untuk menerapkan konfigurasi terkelola.

Anda dapat menerapkan konfigurasi terkelola ke perangkat dengan menyetel policy.productPolicy.managedConfiguration di policy Device.

Menggunakan mcmId

Setiap kali admin IT menyimpan profil konfigurasi baru dari iframe konfigurasi terkelola, iframe akan menampilkan ID unik yang disebut mcmId. mcmId tidak memiliki batas jumlah perangkat yang dapat menerapkannya dan tidak memiliki waktu habis masa berlaku.

Untuk menerapkan profil konfigurasi ke perangkat, setel policy.productPolicy.managedConfiguration.configurationVariables.mcmId dalam policy Device.

Jika ingin mengizinkan admin IT menggunakan variabel di iframe konfigurasi terkelola (seperti $FirstName, $LastName), Anda harus menentukan variabel yang ada dalam profil menggunakan policy.productPolicy[].managedConfiguration.configurationVariables.mcmId.variableSet[].

Menggunakan daftar properti terkelola

Anda juga dapat menyertakan kumpulan properti terkelola dengan menetapkan policy.productPolicy.managedConfiguration.managedProperty[] dalam policy Device.

Contoh di bawah ini menunjukkan cara menentukan konfigurasi. Konfigurasi ini berisi bundle_array (daftar) yang terdiri dari dua properti paket (grup properti terkait, dalam hal ini, properti untuk VPN).

    ManagedConfiguration managedConfiguration = new ManagedConfiguration()
      .setManagedProperty(
        ImmutableList.of(
            new ManagedProperty()
                .setKey("printing_enabled")
                .setValueBool(true),
            new ManagedProperty()
                .setKey("vpn_configurations")
                .setValueBundleArray(
                    ImmutableList.of(
                        new ManagedPropertyBundle().setManagedProperty(
                            ImmutableList.of(
                                new ManagedProperty()
                                    .setKey("server")
                                    .setValueString("vpn1.example.com"),
                                new ManagedProperty()
                                    .setKey("username")
                                    .setValueString("john.doe"))),
                        new ManagedPropertyBundle().setManagedProperty(
                            ImmutableList.of(
                                new ManagedProperty()
                                    .setKey("server")
                                    .setValueString("vpn2.example.com"),
                                new ManagedProperty()
                                    .setKey("username")
                                    .setValueString("jane.doe")))))));

Untuk mengetahui informasi selengkapnya tentang berbagai properti konfigurasi yang dapat didukung aplikasi, lihat Menentukan Konfigurasi Terkelola.

Mencantumkan profil konfigurasi aplikasi

Bergantung pada cara Anda mendesain solusi, Anda mungkin ingin menampilkan daftar profil konfigurasi tersimpan untuk aplikasi. Untuk mengambil daftar ini, panggil Managedconfigurationssettings.list.