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

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

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

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

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

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

เพิ่มองค์ประกอบ queries

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