کیت توسعه نرمافزار Android Management API (AMAPI) به برنامههای خاص امکان میدهد مستقیماً با Android Device Policy (ADP) ارتباط برقرار کنند. این برنامه از موارد زیر پشتیبانی میکند:
- اجرای محلی «فرمانها»
- انتقال دستگاههای مدیریتشده با «کنترلکننده خطمشی دستگاه» سفارشی به AMAPI
- Device Trust از Android Enterprise
- جریان ثبتنام دستگاه جدید که از افزودن «حسابهای Google» مدیریتشده نیز پشتیبانی میکند
- مدیریت برنامههای سفارشی با AMAPI
- مدیریت نقشهای برنامه.
- مدیریت بهروزرسانیها با «کنترلهای بهروزرسانی یکپارچه».
- خواندن «سند شناسایی جاسازیشده» دستگاه.
برای ادغام کردن AMAPI SDK با برنامهتان، باید مراحل زیر را دنبال کنید:
- کتابخانه کیت توسعه نرمافزار AMAPI را اضافه کنید.
- اگر کیت توسعه نرمافزار هدف >= 30 است، عنصر پُرسمانها را اضافه کنید.
پیشنیازها
- مطمئن شوید که
minSdkVersionبرنامهتان حداقل روی سطح API ۲۱ تنظیم شده باشد. - وابستگیهای جدیدترین نسخه AMAPI SDK را به برنامهتان اضافه کنید. میتوانید نسخه جدیدترین کتابخانه دردسترس و نحوه افزودن آن به برنامهتان را در صفحه یادداشتهای انتشار کیت توسعه نرمافزار AMAPI پیدا کنید.
افزودن عنصر پُرسمانها
اگر برنامه شما کیت توسعه نرمافزار ۳۰ یا بالاتر را هدف قرار میدهد، عنصر پُرسمانها در
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 ارائه دهید. دو رویکرد برای انجام این کار وجود دارد.
اسناد هر ویژگی مشخص میکند که از کدام رویکرد استفاده شود.
Explicit API
در این حالت، ComponentName ازطریق میانای برنامهسازی کاربردی مناسبی به برنامه ADP منتقل میشود. جزئیات در اسناد مربوط به ویژگی موردنظر ارائه شده است.
در 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 به یک سرویس اضافه کنید.