Pakiet SDK interfejsu Android Management API (AMAPI) umożliwia określonym aplikacjom bezpośrednią komunikację z aplikacją Android Device Policy (ADP). Obejmuje on obsługę:
- lokalnego wykonywania poleceń,
- migrowania urządzeń zarządzanych za pomocą niestandardowego DPC do AMAPI,
- Device Trust od Android Enterprise,
- nowego procesu rejestracji urządzeń, który obsługuje też dodawanie zarządzanych kont Google,
- zarządzania aplikacjami niestandardowymi za pomocą AMAPI,
- zarządzania rolami aplikacji,
- odczytywania numeru EID urządzenia.
Aby zintegrować pakiet SDK AMAPI z aplikacją, wykonaj te czynności:
- Dodaj bibliotekę pakietu SDK AMAPI.
- Jeśli docelowy pakiet SDK ma wersję >= 30, dodaj element queries.
Wymagania wstępne
- Sprawdź, czy
minSdkVersionaplikacji jest ustawiony na co najmniej poziom interfejsu API 21. - Dodaj do aplikacji zależności najnowszej wersji pakietu SDK AMAPI. Wersję najnowszej dostępnej biblioteki i informacje o tym, jak dodać ją do aplikacji, znajdziesz na stronie informacji o wersji pakietu SDK AMAPI.
Dodawanie elementu queries
Jeśli aplikacja jest kierowana na pakiet SDK w wersji 30 lub nowszej, w pliku AndroidManifest.xml musi się znajdować element queries, który określa, że aplikacja będzie wchodzić w interakcje z ADP.
<queries>
<package android:name="com.google.android.apps.work.clouddpc" />
</queries>
Więcej informacji znajdziesz w artykule o filtrowaniu widoczności pakietów na Androidzie.
Implementowanie NotificationReceiverService
Niektóre funkcje wymagają utworzenia
NotificationReceiverService, a inne funkcje
mogą z niego korzystać opcjonalnie. Aby go używać, zdefiniuj klasę rozszerzającą NotificationReceiverService, dodaj ją jako service do pliku AndroidManifest.xml i upewnij się, że jest eksportowana.
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.
}
}
Musisz podać aplikacji ADP ComponentName klasy NotificationReceiverService. Możesz to zrobić na 2 sposoby.
Dokumentacja każdej funkcji określa, którego podejścia należy użyć.
Jawny interfejs API
W tym przypadku ComponentName jest przekazywany do aplikacji ADP za pomocą odpowiedniego interfejsu API. Szczegóły znajdziesz w dokumentacji danej funkcji.
W pliku AndroidManifest.xml dodaj:
<service
android:name = ".MyAppNotificationReceiverService"
android:exported = "true" />
Automatyczne wykrywanie
W tym przypadku musisz otagować usługę, aby można było ją automatycznie wykryć. W pliku AndroidManifest.xml dodaj:
<service
android:name = ".MyAppNotificationReceiverService"
android:exported = "true" >
<meta-data android:name="Insert name here" android:value=""/>
</service>
Konkretny ciąg znaków, którego należy użyć w przypadku android:name elementu meta-data, jest opisany
w dokumentacji każdej funkcji korzystającej z tego podejścia (przykład znajdziesz w artykule
Zarządzanie rolami aplikacji).
Aby to tagowanie było prawidłowe, aplikacja musi mieć dokładnie 1 włączoną usługę z elementem meta-data, którego atrybut android:name ma wartość tego konkretnego ciągu znaków, a atrybut android:value jest pustym ciągiem znaków. Do tej samej usługi możesz dodać kilka elementów meta-data.