Lenguaje

DevicePolicyManager.AddPersistentPreferredActivity Método

Definición

Llamado por un propietario de perfil o propietario del dispositivo o titular del permiso android.Manifest.permission#MANAGE_DEVICE_POLICY_LOCK_TASK.

[Android.Runtime.Register("addPersistentPreferredActivity", "(Landroid/content/ComponentName;Landroid/content/IntentFilter;Landroid/content/ComponentName;)V", "GetAddPersistentPreferredActivity_Landroid_content_ComponentName_Landroid_content_IntentFilter_Landroid_content_ComponentName_Handler")]
[Android.Runtime.RequiresPermission("android.permission.MANAGE_DEVICE_POLICY_LOCK_TASK")]
public virtual void AddPersistentPreferredActivity(Android.Content.ComponentName? admin, Android.Content.IntentFilter? filter, Android.Content.ComponentName activity);
[<Android.Runtime.Register("addPersistentPreferredActivity", "(Landroid/content/ComponentName;Landroid/content/IntentFilter;Landroid/content/ComponentName;)V", "GetAddPersistentPreferredActivity_Landroid_content_ComponentName_Landroid_content_IntentFilter_Landroid_content_ComponentName_Handler")>]
[<Android.Runtime.RequiresPermission("android.permission.MANAGE_DEVICE_POLICY_LOCK_TASK")>]
abstract member AddPersistentPreferredActivity : Android.Content.ComponentName * Android.Content.IntentFilter * Android.Content.ComponentName -> unit
override this.AddPersistentPreferredActivity : Android.Content.ComponentName * Android.Content.IntentFilter * Android.Content.ComponentName -> unit

Parámetros

admin
ComponentName

Al que DeviceAdminReceiver está asociada esta solicitud. Null si el autor de la llamada no es un administrador de dispositivos.

filter
IntentFilter

IntentFilter para el que se agrega un controlador predeterminado.

activity
ComponentName

Actividad que se agrega como controlador de intenciones predeterminado.

Atributos

Comentarios

Llamado por un propietario de perfil o propietario del dispositivo o titular del permiso android.Manifest.permission#MANAGE_DEVICE_POLICY_LOCK_TASK. para establecer una actividad predeterminada que el sistema selecciona para controlar las intenciones que coinciden con el especificado IntentFilter en lugar de mostrar el mecanismo de desambiguación predeterminado. Esta actividad seguirá siendo el controlador de intenciones predeterminado incluso si se restablece el conjunto de controladores de eventos potenciales para el filtro de intención y si se restablecen las preferencias de intención.

Tenga en cuenta que la aplicación de destino todavía debe declarar la actividad en el manifiesto, la API simplemente establece la actividad como la predeterminada para controlar el filtro de intención dado.

El mecanismo de desambiguación predeterminado toma el control si la actividad ya no está instalada (ya). Cuando se instala la actividad (re), se restablece automáticamente como controlador de intenciones predeterminado para el filtro.

Tenga en cuenta que llamar a esta API para establecer un controlador de intenciones predeterminado, solo permite evitar el mecanismo de desambiguación predeterminado. Las intenciones implícitas que no desencadenan este mecanismo (como invocar el explorador) no se pueden configurar ya que están controladas por otras configuraciones.

El administrador del dispositivo que llama debe ser propietario del perfil o propietario del dispositivo. Si no es así, se producirá una excepción de seguridad.

A partir de , después de Build.VERSION_CODES#UPSIDE_DOWN_CAKEestablecer la directiva de actividad preferida persistente, PolicyUpdateReceiver#onPolicySetResult(Context, String, Bundle, TargetUser, PolicyUpdateResult) notificará al administrador si la directiva se estableció correctamente o no. Esta devolución de llamada contendrá: <ul><li> El identificador<DevicePolicyIdentifiers#PERSISTENT_PREFERRED_ACTIVITY_POLICY de directiva li> El conjunto de parámetros de directiva adicional, que contiene PolicyUpdateReceiver#EXTRA_INTENT_FILTER el filtro de intención que la directiva se aplica a <li> La TargetUser que esta directiva se relaciona con <li> , PolicyUpdateResultque será PolicyUpdateResult#RESULT_POLICY_SET si la directiva se estableció correctamente o el motivo por el que la directiva no se pudo establecer (por ejemploPolicyUpdateResult#RESULT_FAILURE_CONFLICTING_ADMIN_POLICY, ) </ul> Si se ha producido un cambio en la directiva, PolicyUpdateReceiver#onPolicyChanged(Context, String, Bundle, TargetUser, PolicyUpdateResult) notificará al administrador de este cambio. Esta devolución de llamada contendrá los mismos parámetros que PolicyUpdateReceiver#onPolicySetResult y PolicyUpdateResult contendrá el motivo por el que cambió la directiva.

NOTA: Realiza la E/S de disco y no se debe llamar a en el subproceso principal.

Java documentación para android.app.admin.DevicePolicyManager.addPersistentPreferredActivity(android.content.ComponentName, android.content.IntentFilter, android.content.ComponentName).

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.

Se aplica a