Mengirim masukan aplikasi ke EMM

Penyedia pengelolaan mobilitas perusahaan (EMM) menawarkan solusi bagi organisasi untuk mengelola perangkat Android dan aplikasi yang diinstal di perangkat. Solusi ini biasanya tersedia sebagai konsol web, yang disebut konsol EMM. Dengan menggunakan konsol EMM, admin IT melakukan tugas pengelolaan perangkat dan aplikasi atas nama organisasi mereka.

Aplikasi yang menargetkan organisasi perusahaan dapat mengirim masukan ke EMM dalam bentuk status aplikasi dengan kunci. API tersedia bagi EMM untuk mengambil data status aplikasi dengan kunci, yang kemudian dapat ditampilkan di konsol EMM. Saluran komunikasi ini memungkinkan admin IT menerima masukan tentang status aplikasi diinstal di perangkat yang dikelola.

Misalnya, aplikasi program email dapat menggunakan status aplikasi dengan kunci untuk mengonfirmasi bahwa akun berhasil dikonfigurasi, melaporkan saat terjadi error sinkronisasi, atau mengirim update status lain yang dianggap sesuai oleh developer aplikasi.

Komponen status aplikasi dengan kunci

Status aplikasi dengan kunci terdiri dari hal-hal berikut:

  • Kunci: ID unik untuk status aplikasi. Maksimum 100 karakter.
  • Pesan: Pesan opsional yang menjelaskan status aplikasi. Maksimum 1.000 karakter. Catatan: Biasanya, pesan akan jauh lebih singkat dari ini.
  • Data: Nilai opsional yang dapat dibaca mesin yang ditujukan bagi EMM untuk memungkinkan admin IT menyiapkan pemberitahuan atau filter berdasarkan nilai. Sebagai contoh, admin IT dapat menyiapkan pemberitahuan jika kolom data battery_percentage < 10. Maksimum 1.000 karakter.
  • Keparahan: Tingkat keparahan status aplikasi. Nilai yang diizinkan adalah SEVERITY_ERROR dan SEVERITY_INFO (default). Hanya tetapkan tingkat keparahan ke SEVERITY_ERROR untuk kondisi error asli yang perlu diperbaiki oleh organisasi.
  • Stempel waktu: Jika status aplikasi dengan kunci ditetapkan, status akan otomatis dikirim dengan stempel waktu dalam milidetik sejak epoch.

Kirim masukan konfigurasi terkelola

Jika aplikasi Anda mendukung konfigurasi terkelola, sebaiknya mengirim status aplikasi dengan kunci sebagai cara untuk memperbarui admin IT terkait status konfigurasi yang mereka tetapkan. Contoh alur kerja berikut menjelaskan salah satu cara untuk melakukannya.

status aplikasi yang dikunci untuk konfigurasi terkelola
  1. Admin IT menggunakan konsol EMM untuk menetapkan dan mengirim konfigurasi terkelola untuk aplikasi yang diinstal di perangkat terkelola sepenuhnya atau di dalam profil kerja. Misalnya:
    • Volume: '50%'
    • Mata uang: 'USDD'
  2. Aplikasi mencoba menerapkan konfigurasi. Volume berhasil disetel ke 50%, tetapi kode mata uang tidak valid dan tidak dapat diterapkan.
  3. Berdasarkan status setiap konfigurasi, aplikasi menetapkan status aplikasi dengan kunci. Setiap status aplikasi dengan kunci berisi kunci unik dan pesan dengan detail status. Sebaiknya cocokkan kunci konfigurasi terkelola jika memungkinkan. Contoh:
    Kunci Pesan Tingkat Keparahan Stempel waktu
    volume Tetapkan ke 50% SEVERITY_INFO 1554461130
    currency Mata uang 'USDD' tidak dikenali SEVERITY_ERROR 1554461130
  4. Penyedia EMM mengambil status aplikasi terkunci yang ditetapkan oleh aplikasi dan menampilkannya di konsol EMM-nya. Contoh:
    Konfigurasi Status Tindakan diperlukan Waktu
    Volume Tetapkan ke 50% Tidak 5 April 2019; 10.45.30
    Mata Uang ERROR: Mata uang 'USDD tidak dikenal. Ya 5 April 2019; 10.45.30

    Penyedia EMM juga harus secara eksplisit menandai setiap status yang diterima dengan SEVERITY_ERROR ke admin IT. Admin IT dapat melihat informasi di konsol EMM dan melakukan tindakan untuk memperbaiki error dalam konfigurasi yang mereka tetapkan.

Laporkan error yang telah diselesaikan

Setelah error diselesaikan, segera kirim status aplikasi tindak lanjut untuk mencegah EMM menampilkan pesan error tanpa batas waktu. Status tindak lanjut ini harus mencakup:

  • Kunci yang sama dengan pesan error awal.
  • Tingkat keparahan SEVERITY_INFO, yang menunjukkan bahwa status tidak berada dalam kondisi error dan tidak mengharuskan organisasi untuk melakukan tindakan lebih lanjut.

Menambahkan dukungan untuk status aplikasi dengan kunci ke aplikasi Anda

Langkah-langkah di bawah ini menjelaskan cara mengintegrasikan status aplikasi dengan kunci dalam aplikasi Anda.

Langkah 1: Tambahkan repositori Maven Google ke file settings.gradle Anda

Tambahkan repositori Maven Google sebagai lokasi repositori dalam file settings.gradle project Anda, seperti ditunjukkan di bawah ini:

dependencyResolutionManagement {
  repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
  repositories {
       google()
  }
}

Langkah 2: Tambahkan library masukan perusahaan ke file build.gradle level modul

Tambahkan dependensi berikut ke file build.gradle level modul:

dependencies {
    implementation 'androidx.enterprise:enterprise-feedback:1.0.0'
}

Langkah 3: Dapatkan instance KeyedAppStatesReporter

Dalam metode onCreate() Anda, dapatkan dan simpan instance KeyedAppStatesReporter. Hal ini memungkinkan saluran komunikasi antara aplikasi dan penyedia EMM Anda.

Kotlin

val reporter = KeyedAppStatesReporter.create(context)

Java

KeyedAppStatesReporter reporter = KeyedAppStatesReporter.create(context);

Langkah 4: Buat kumpulan status aplikasi sesuai kunci

Ikuti praktik terbaik yang diuraikan di bawah ini saat membuat status aplikasi dengan kunci:

  • Jangan pernah menyertakan informasi identitas pribadi (PII) dalam suatu status—status aplikasi dengan kunci tidak cocok untuk data sensitif.
  • Pertahankan status aplikasi yang dikunci dalam batas yang ditentukan di MAX_KEY_LENGTH, MAX_MESSAGE_LENGTH, dan MAX_DATA_LENGTH.
  • Satu panggilan setStates atau setStatesImmediate dibatasi total 300 KB (sekitar 1/3 dari total yang dapat disimpan per hari). Melebihi batas ini akan menyebabkan perilaku yang tidak ditentukan.
  • Hanya tetapkan tingkat keparahan status ke SEVERITY_ERROR jika terdapat kondisi yang mengharuskan organisasi mengambil tindakan untuk memperbaikinya.
  • Saat mengirim status aplikasi yang berisi error, pastikan Anda juga mengirim status tindak lanjut saat error diselesaikan, sehingga EMM dapat berhenti menandai error di konsolnya.
  • Untuk status tindak lanjut, gunakan kunci yang sama dengan status awal yang menampilkan error dan tetapkan tingkat keparahan ke SEVERITY_INFO.

Cuplikan di bawah ini membuat kumpulan status aplikasi sesuai kunci:

Kotlin

    val states = hashSetOf(KeyedAppState.builder()
             .setKey("key")
             .setSeverity(KeyedAppState.SEVERITY_INFO)
             .setMessage("message")
             .setData("data")
             .build())
    

Java

    Collection states = new HashSet<>();
    states.add(KeyedAppState.builder()
     .setKey("key")
     .setSeverity(KeyedAppState.SEVERITY_INFO)
     .setMessage("message")
     .setData("data")
     .build());
    

Langkah 5: Setel status aplikasi sesuai kunci

Metode setStates() segera mengirim status aplikasi terkunci ke aplikasi Play Store (nama paket: com.android.vending) jika diinstal di perangkat, serta admin perangkat atau profil kerja.

Kotlin

keyedAppStatesReporter.setStates(states)

Java

keyedAppStatesReporter.setStates(states);

Menguji status aplikasi dengan kunci

Untuk petunjuk pengujian mendetail, lihat Masukan aplikasi pengujian.