ผสานรวมกับ AMAPI SDK

SDK ของ Android Management API (AMAPI) ช่วยให้แอปบางแอปสื่อสารกับ Android Device Policy (ADP) ได้โดยตรง โดยจะรองรับสิ่งต่อไปนี้

คุณต้องทำตามขั้นตอนต่อไปนี้เพื่อผสานรวม AMAPI SDK กับแอปพลิเคชัน

  1. เพิ่มไลบรารี AMAPI SDK
  2. เพิ่มองค์ประกอบการค้นหา หาก SDK เป้าหมาย >= 30

ข้อกำหนดเบื้องต้น

  • ตรวจสอบว่าได้ตั้งค่า minSdkVersion ของแอปเป็น API ระดับ 21 เป็นอย่างน้อย
  • เพิ่มการอ้างอิงสำหรับ AMAPI SDK เวอร์ชันล่าสุดลงใน แอปพลิเคชัน คุณดูเวอร์ชันของไลบรารีล่าสุดที่พร้อมใช้งานและ วิธีเพิ่มลงในแอปพลิเคชันได้ในหน้าหมายเหตุประจำรุ่นของ AMAPI SDK

เพิ่มองค์ประกอบการค้นหา

หากแอปกำหนดเป้าหมายเป็น SDK 30 ขึ้นไป คุณจะต้องมีองค์ประกอบ queries ใน AndroidManifest.xml เพื่อระบุว่าแอปจะโต้ตอบกับ ADP

<queries>
    <package android:name="com.google.android.apps.work.clouddpc" />
</queries>

ดูข้อมูลเพิ่มเติมได้ที่การกรองระดับการมองเห็นแพ็กเกจใน Android

ใช้ NotificationReceiverService

ฟีเจอร์บางอย่างต้องสร้างNotificationReceiverService และบางฟีเจอร์ ก็ใช้ฟีเจอร์นี้ได้โดยไม่บังคับ หากต้องการใช้ ให้กำหนดคลาสที่ขยาย NotificationReceiverService เพิ่มเป็น service ใน AndroidManifest.xml และตรวจสอบว่าได้ส่งออกแล้ว


import com.google.android.managementapi.notification.NotificationReceiverService;

...

public final class MyAppNotificationReceiverService extends NotificationReceiverService {

  @Override
  protected void setupInjection() {
    // This method can be optionally used to inject dependencies at the
    // beginning of the service lifecycle.
  }
}

คุณต้องระบุ ComponentName ของคลาส NotificationReceiverService ให้กับแอป ADP ซึ่งทำได้ 2 วิธีดังนี้ เอกสารประกอบสำหรับแต่ละฟีเจอร์จะระบุแนวทางที่จะใช้

API ที่ชัดเจน

ในกรณีนี้ ระบบจะส่ง ComponentName ไปยังแอป ADP ผ่าน API ที่เหมาะสม เอกสารประกอบของฟีเจอร์ที่เป็นปัญหาจะมีรายละเอียด ใน AndroidManifest.xml ให้เพิ่มข้อมูลต่อไปนี้

<service
 android:name = ".MyAppNotificationReceiverService"
 android:exported = "true" />

การค้นพบอัตโนมัติ

ด้วยแนวทางนี้ คุณต้องติดแท็กบริการเพื่อให้ระบบค้นพบได้โดยอัตโนมัติ ใน AndroidManifest.xml ให้เพิ่มข้อมูลต่อไปนี้

<service
 android:name = ".MyAppNotificationReceiverService"
 android:exported = "true" >
    <meta-data android:name="Insert name here" android:value=""/>
</service>

สตริงที่เฉพาะเจาะจงที่จะใช้สำหรับ android:name ของ meta-data มีอยู่ในเอกสาร สำหรับแต่ละฟีเจอร์ที่ใช้วิธีนี้ (ดูตัวอย่างได้ที่ จัดการบทบาทของแอปพลิเคชัน) หากต้องการให้การติดแท็กนี้ถูกต้อง แอปของคุณต้องมีบริการที่เปิดใช้แล้ว 1 รายการเท่านั้น ซึ่งมี meta-data ที่มี android:name เป็นสตริงที่เฉพาะเจาะจงนี้ และ android:value เป็นสตริงว่าง คุณเพิ่ม meta-data หลายรายการลงในบริการเดียวกันได้