7

Nowy Android Lollipop API udostępnia nową parę metod pobierania i ustawiania ograniczenia w innych aplikacjach: DevicePolicyManager.getApplicationRestrictions i DevicePolicyManager.setApplicationRestrictionsJak znaleźć aplikację dostępny ograniczeń dla DevicePolicyManager.setApplicationRestrictions

Jest przykładem ich wykorzystania w BasicManagedProfile sample app, aby ustawić ograniczenia w aplikacji Chrome, przekazując zestaw par klucz/wartość, które wydają się być skorelowane z Chrome's published policy list. To działa idealnie dla mnie.

Ale nie mogę znaleźć żadnej dokumentacji na temat innych aplikacji, które można w ten sposób ograniczyć. Czy ktoś wie o jakichkolwiek innych aplikacjach, które mogą być ograniczone tymi metodami, oraz o kluczach, które można ustawić?

DevicePolicyManager.getApplicationRestrictions tylko wydaje się zwracać ograniczenia już ustawione dla tej aplikacji, a nie listę wszystkich dostępnych ograniczeń. Próbowałem też używać w Chrome wersji RestrictionsManager.getManifestRestrictions, ale ta zwraca pustą listę, więc myślę, że to coś innego.

+0

Mam również do czynienia z tym samym problemem. Brak pomocy :( –

+0

Próbowałem również z 'Bundle appRestrictions = manager.getApplicationRestrictions (BasicDeviceAdminReceiver.getComponentName (getActivity())," com.adobe.reader "); Log.d (" "," * $%^"+ appRestrictions.toString()); 'który drukuje 'Pakiet [EMPTY_PARCEL]' –

+0

hej @javedsalat czy kiedykolwiek odkryłeś, co spowodowało wywołanie getApplicationRestrictions zwróciło pustą paczkę? Mam teraz ten sam problem, powinienem zobaczyć ograniczenia, ale przychodzi pusty –

Odpowiedz

1

Proponuję przeczytać dokumentację Google dotyczącą budowy modelu Work policy controller.

Zarządzana aplikacja będzie zawierać plik ograniczeń, który jest zadeklarowany w manifeście. Enterprise Mobile Management Partner może pobrać te informacje za pomocą Google Play API. Czytaj Implementing App Restrictions

Poniższe kroki mogą być wykorzystane w celu znalezienia dostępnych ograniczeń w aplikacji Android:

  • Pobierz apk z urządzenia. Przykład: wykonaj następujące kroki:

    $ adb shell pm path com.android.chrome 
    package:/data/app/com.android.chrome-2/base.apk 
    $ adb pull /data/app/com.android.chrome-2/base.apk 
    4722 KB/s (32575247 bytes in 6.735s) 
    
  • Rozpakuj plik APK. Wyszukaj plik app_restrictions.xml w folderze res/.

  • Użyj narzędzia aapt, aby pobrać zawartość tego pliku z apk. Przykład:

    aapt d xmltree DivideProductivity_1.2_RC05_6-1.apk res/xml/app_restrictions.xml 
    aapt d xmltree base.apk res/xml-v21/app_restrictions.xml 
    

Należy zauważyć, że z tego mechanizmu, można zobaczyć tylko klucze restrykcyjnych. Będziesz potrzebować typu ograniczenia i innych szczegółów, aby faktycznie ustawić ograniczenia dla zarządzanej aplikacji. Właściwym sposobem jest używanie Google Play API z serwera.

Powiązane problemy