Mengirim masukan aplikasi ke EMM

Penyedia pengelolaan mobilitas perusahaan (EMM) menawarkan solusi untuk organisasi untuk mengelola perangkat Android dan aplikasi terinstal di dalamnya. Solusi tersebut yang biasanya tersedia sebagai konsol web, yang disebut konsol EMM. Menggunakan EMM konsol, admin IT melakukan tugas pengelolaan perangkat dan aplikasi atas nama organisasi/pengaturan.

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

Misalnya, aplikasi program email bisa menggunakan status aplikasi berkunci untuk mengonfirmasi bahwa berhasil dikonfigurasi, melaporkan saat terjadi error sinkronisasi, atau mengirim pembaruan status lain yang dianggap tepat oleh pengembang aplikasi.

Komponen status aplikasi dengan kunci

Status aplikasi yang terkunci terdiri dari 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 mengizinkan admin IT untuk menyiapkan pemberitahuan atau filter berdasarkan nilai. Misalnya, admin IT dapat siapkan 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 pada SEVERITY_ERROR untuk mengetahui kondisi {i>error <i}yang sebenarnya yang perlu diperbaiki oleh organisasi.
  • Stempel waktu: Jika status aplikasi yang terkunci disetel, status aplikasi akan otomatis dikirim dengan stempel waktu dalam milidetik sejak epoch.

Kirim masukan konfigurasi terkelola

Jika aplikasi Anda mendukung konfigurasi terkelola, mengirim status aplikasi yang terkunci direkomendasikan sebagai cara untuk memperbarui admin IT pada dari konfigurasi yang mereka tetapkan. Contoh alur kerja berikut menjelaskan salah satu cara untuk melakukan ini.

status aplikasi yang terkunci untuk konfigurasi terkelola
  1. Admin IT menggunakan konsol EMM untuk menyetel 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 akan mencoba menerapkan konfigurasi. Volume berhasil disetel hingga 50%, tetapi kode mata uang tidak valid dan tidak dapat diterapkan.
  3. Berdasarkan status setiap konfigurasi, aplikasi menetapkan status aplikasi yang terkunci. Setiap status aplikasi yang dikunci 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 disetel oleh aplikasi dan menampilkan mereka 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 dikenali. Ya 5 April 2019; 10:45:30

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

Melaporkan error yang telah diselesaikan

Setelah error teratasi, segera kirim status aplikasi tindak lanjut ke mencegah EMM menampilkan pesan error tanpa batas waktu. Tindak lanjut ini negara bagian harus mencakup:

  • Kunci yang sama sebagai pesan error awal.
  • Tingkat keparahan SEVERITY_INFO, yang menunjukkan bahwa keadaan itu tidak berada dalam kondisi {i>error<i} dan tidak mengharuskan organisasi untuk mengambil tindakan lebih lanjut.

Menambahkan dukungan untuk status aplikasi dengan kunci ke aplikasi Anda

Langkah-langkah di bawah ini menjelaskan cara mengintegrasikan status aplikasi yang memiliki kunci di aplikasi Anda.

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

Tambahkan repositori Maven Google sebagai lokasi repositori di settings.gradle project Anda seperti yang 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 build.gradle level modul file:

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

Langkah 3: Dapatkan instance KeyedAppStatesReporter

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

Kotlin

val reporter = KeyedAppStatesReporter.create(context)

Java

KeyedAppStatesReporter reporter = KeyedAppStatesReporter.create(context);

Langkah 4: Membuat kumpulan status aplikasi yang terkunci

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

  • Jangan pernah menyertakan informasi identitas pribadi (PII) dalam suatu status—status aplikasi yang berkaitan tidak untuk data sensitif.
  • Pertahankan status aplikasi yang terkunci dalam batas yang ditentukan dalam MAX_KEY_LENGTH, MAX_MESSAGE_LENGTH, dan MAX_DATA_LENGTH.
  • Satu panggilan setStates atau setStatesImmediate dibatasi hingga total 300 KB (sekitar 1/3 dari total yang dapat disimpan per hari). Jika batas ini terlampaui, perilaku akan menjadi tidak ditentukan.
  • Hanya tetapkan tingkat keseriusan status ke SEVERITY_ERROR jika ada kondisi yang mana organisasi perlu mengambil tindakan untuk memperbaikinya.
  • Saat mengirim status aplikasi yang berisi error, pastikan Anda juga mengirim sebuah tindak lanjut saat error telah diselesaikan sehingga EMM dapat berhenti menandai error di konsol mereka.
  • Untuk status tindak lanjut, gunakan key sebagai yang menampilkan error dan menetapkan tingkat keparahan SEVERITY_INFO

Cuplikan di bawah membuat kumpulan status aplikasi yang terkunci:

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: Menetapkan status aplikasi yang terkunci

setStates() segera mengirimkan status aplikasi dengan kunci ke aplikasi Play Store (nama paket: com.android.vending) jika diinstal di perangkat, serta semua admin perangkat atau profil kerja.

Kotlin

keyedAppStatesReporter.setStates(states)

Java

keyedAppStatesReporter.setStates(states);

Menguji status aplikasi dengan kunci

Untuk petunjuk pengujian mendetail, lihat Menguji masukan aplikasi.