Какова цель defaultValue в XML-файле управляемых конфигураций?
Я буду использовать управляемые конфигурации в приложении, которое разрабатываю.
Получив некоторую помощь с этим ответом, я не понимаю, как значения по умолчанию используются в управляемых конфигурациях. Моя ссылка это ссылка.
В моей ссылке под заголовком "Примечание" Google говорит: "Пакет управляемых конфигураций содержит один элемент для каждой конфигурации, которая была явно установлена поставщиком управляемых конфигураций. Однако нельзя предполагать, что конфигурация будет присутствовать в пакете только потому, что вы определил значение по умолчанию в XML-файле управляемых конфигураций."
Я понимаю, что если элемент не был явно установлен поставщиком управляемых конфигураций, то этот элемент не будет в Пакете. Но следующая (последняя) строка мне не понятна.
Мой главный вопрос: "Какова цель defaultValue в XML-файле управляемых конфигураций"? Но я надеюсь, что ответ также поможет или поможет мне ответить на эти вопросы:
- Кто может прочитать значение по умолчанию?
- Может ли управляемое приложение прочитать его? Если так, то как?
- Может ли поставщик управляемых конфигураций прочитать его? Если так, то как?
- Почему я не могу предположить, что конфигурация будет присутствовать в комплекте, если она имеет значение по умолчанию? Отвечает ли поставщик управляемых конфигураций за чтение значения по умолчанию и его явную настройку?
1 ответ
Вы можете использовать defaultValue
поле, чтобы объяснить, как ваше приложение ведет себя, если свойство не установлено явно управляющим приложением.
Файл XML, указанный в манифесте, предназначен для использования MDM для отображения пользовательского интерфейса в консоли, чтобы ИТ-администратор мог настроить ваше приложение. Если вы установите defaultValue
для свойства MDM предварительно заполняет соответствующее поле, когда ваше приложение настраивается в первый раз (например, отображать флажок для логического свойства, которое по умолчанию равно true
).
Для администратора не настраивать ваше приложение должно быть так же, как настраивать его с настройкой по умолчанию. Поэтому, чтобы быть согласованным, ваше приложение должно вести себя одинаково, независимо от того, установлено ли свойство или установлено defaultValue
,
Чтобы увидеть, как ваша конфигурация будет выглядеть в консоли MDM, вы можете воспользоваться демонстрацией Android Management Experience.
Изменить: Подробнее о том, как схема ограничения и defaultValue
можно получить
Схема ограничения приложения, определенная в файле XML, может быть получена либо
- используя API Google Play EMM getAppRestrictionsSchema, который возвращает
defaultValue
s для каждого ограничения - или с помощью любого приложения на устройстве, используя RestrictionsManager.getManifestRestrictions, где возвращается
RestrictionEntry
s их значения установлены вdefaultValue
если указано в файле XML, или к общему значению по умолчанию в противном случае (0
заTYPE_INTEGER
,false
заTYPE_BOOLEAN
, так далее). Вы можете прочитать полную логику этого метода в RestrictionManager.java AOSP и посмотреть, как он используется в TestageC's ManageAppRestrictionsFragment.java.