Saltar al contenido

¿Cómo puedo habilitar mediante programación el acceso guiado (modo quiosco) en un iPhone?

No dudes en compartir nuestra web y códigos en tus redes, necesitamos de tu ayuda para ampliar esta comunidad.

Solución:

Puede ingresar y salir del modo de acceso guiado desde su aplicación. Sin embargo, para hacerlo, el dispositivo debe estar supervisado y tener instalado un perfil MDM que tenga el ID del paquete de la aplicación en la lista de aplicaciones que pueden solicitar el modo de acceso guiado (el key es autonomousSingleAppModePermittedAppIDs.

Una vez hecho esto, para ingresar al acceso guiado, haga lo siguiente:

UIAccessibility.requestGuidedAccessSession(true)
    success in
    print("Request guided access success (success)")

Por debajo de iOS 7

No puede poner el dispositivo iOS en el modo Quiosco programáticamente, tampoco puede hacer nada en su aplicación para convertirla en una aplicación Quiosco (no puede deshabilitar los eventos del botón de inicio programáticamente y no puede obtener los eventos en su aplicación )

Para hacer que el dispositivo funcione en modo Quiosco, puede usar el de Apple Acceso guiado. Pero no puede habilitarlo mediante programación. Para más información consulta aquí


iOS 7 y 7+

Puedes usar:

void UIAccessibilityRequestGuidedAccessSession(BOOL enable, void(^completionHandler)(BOOL didSucceed))

Referencia UIAccessibilityRequestGuidedAccessSession

UIAccessibilityRequestGuidedAccessSession

Realiza la transición de la aplicación hacia o desde el modo de aplicación única de forma asíncrona.
Declaración

Rápido

func UIAccessibilityRequestGuidedAccessSession(_ enable: Bool, _ completeHandler: ((Bool) -> Void)!)

C objetivo

void UIAccessibilityRequestGuidedAccessSession (BOOL habilitado, void
(^completionHandler)(BOOL tuvo éxito) ); Habilitación de parámetros

Especifique SÍ para poner el dispositivo en modo de aplicación única para esta aplicación o NO para salir del modo de aplicación única.

controlador de finalización

El bloque que notifica a tu app del éxito o fracaso de la operación. Este bloque toma el siguiente parámetro: didSucceed

En caso afirmativo, la aplicación hizo la transición hacia o desde el modo de aplicación única con éxito. Si NO, la aplicación o el dispositivo no son elegibles para el modo de aplicación única o hubo algún otro error. Discusión

Puede usar este método para bloquear su aplicación en el modo de aplicación única y liberarla de ese modo más tarde. Por ejemplo, una aplicación para realizar exámenes podría ingresar a este modo al comienzo de un examen y salir cuando el usuario complete el examen. El modo de aplicación única solo se admite para dispositivos supervisados ​​mediante la administración de dispositivos móviles (MDM), y MDM debe habilitar la aplicación para este modo. Debe equilibrar cada llamada para ingresar al modo de aplicación única con una llamada para salir de ese modo.

Debido a que ingresar o salir del modo de aplicación única puede llevar algún tiempo, este método se ejecuta de forma asíncrona y le notifica los resultados mediante el bloque finishHandler. Declaración de importación

Importar disponibilidad de UIKit

Disponible en iOS 7.0 y posteriores.

También puede usar UIAccessibilityIsGuidedAccessEnabled para verificar si el acceso guiado está habilitado o no.

Según la documentación, hay dos formas de permitir que su aplicación iOS se ejecute en modo quiosco.

Perfil de configuración: Con la ayuda de la administración de dispositivos móviles (MDM), podemos crear un perfil de configuración empresarial y enviarlo al dispositivo mediante cualquier MDM, por ejemplo, MobileIron, o con la ayuda de cualquier utilidad de configuración de iPhone. Una vez que se instala este perfil, la primera aplicación que se inicia cuando se reinicia el dispositivo será la única aplicación que se ejecutará hasta que reinicie el dispositivo nuevamente.

Acceso guiado (iOS 6 y superior): Desde iOS 6, podemos lograr esto utilizando dos métodos, a saber, Acceso guiado y Acceso supervisado. Estos dos métodos se ocupan de las funciones de control de accesibilidad, como permitir que el usuario tenga acceso restringido a su dispositivo. Esto se puede lograr solo si tenemos acceso completo al dispositivo.

Podemos lograr configurar el modo quiosco en la aplicación iOS mediante programación en iOS 7 usando un método UIKit UIAccessibilityRequestGuidedAccessSession. Según la documentación del desarrollador de Apple, ‘UIAccessibilityRequestGuidedAccessSession hará la transición de la aplicación hacia o desde el modo de aplicación única de forma asíncrona’.

Como se indica en el documento para desarrolladores de Apple:

UIAccessibilityRequestGuidedAccessSession

Realiza la transición de la aplicación hacia o desde el modo de aplicación única de forma asíncrona.

void UIAccessibilityRequestGuidedAccessSession(BOOL enable, void(^completionHandler)(BOOL didSucceed))

Parámetros

enable

Especifique SÍ para poner el dispositivo en modo de aplicación única para esta aplicación o NO para salir del modo de aplicación única.

completionHandler

El bloque que notifica a tu app del éxito o fracaso de la operación. Este bloque toma el siguiente parámetro:

didSucceed

En caso afirmativo, la aplicación hizo la transición hacia o desde el modo de aplicación única con éxito. Si NO, la aplicación o el dispositivo no son elegibles para el modo de aplicación única o hubo algún otro error. Discusión Puede usar este método para bloquear su aplicación en el modo de aplicación única y liberarla de ese modo más tarde. Por ejemplo, una aplicación para realizar exámenes podría ingresar a este modo al comienzo de un examen y salir cuando el usuario complete el examen. El modo de aplicación única solo se admite para dispositivos supervisados ​​mediante la administración de dispositivos móviles (MDM), y MDM debe habilitar la aplicación para este modo. Debe equilibrar cada llamada para ingresar al modo de aplicación única con una llamada para salir de ese modo. Debido a que ingresar o salir del modo de aplicación única puede llevar algún tiempo, este método se ejecuta de forma asíncrona y le notifica los resultados mediante el completionHandlerblock.

Availability
Available in iOS 7.0 and later.

Ver también

UIAccessibilityIsGuidedAccessEnabled

Declarado en

UIAccessibility.h

Si crees que te ha sido de ayuda este post, nos gustaría que lo compartas con el resto desarrolladores de este modo contrubuyes a difundir nuestro contenido.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *