Compact Framework y las aplicaciones en modo Kiosco

Normalmente a la hora de afrontar el desarrollo de una aplicación móvil nos suelen exigir que la aplicación se ejecute en modo kiosco, es decir que el usuario solo pueda trabajar con la aplicación en cuestión y limitar de este modo el acceso a otras aplicaciones.


Unos de los primeros pasos para esto es el inhabilitar el botón de inicio del escritorio, eso nos permite hacer que nuestra aplicación pueda utilizarse en modo kiosco sin la necesidad de estar maximizando el formulario y realizando chequeos para hacer que nuestra aplicación siempre tenga el foco, esto último además tiene el inconveniente de que en caso de que necesitemos utilizar alguna funcionalidad de la PDA, como el teléfono móvil, no podríamos hacerlo.
En otros casos también necesitamos deshabilitar el SIP panel para forzar a utilizar nuestro propio teclado.


Todo esto es posible hacerlo mediante llamadas en nativo, para facilitar esto aquí os dejo una pequeña librería MobileNUG.Device.Kiosco que os permitirá jugar con todo esto directamente desde código manejado.


Para utilizarla tan solo debéis agregarla a vuestra solución Smart Device para Compact Framework.


La librería MobileNUG.Device.Kiosco cuenta con las siguientes funciones


ModoKiosco(Activar)
Esta función deshabilita y oculta el icono de Inicio de Windows Mobile, y deshabilita y oculta el SIPpanel


OcultarElemento(Accion a realizar)
Esta función permite realizar (según el parámetro Acción que le pasemos)
Mostrar y habilitar todo
Ocultlar botón inicio
Ocultar icono SIP panel
Ocultar botón inicio e icono SIP panel


Ojo, que los oculta pero no los deshabilita


BotonInicio(Activar)
Hbilita y deshabilita el botón de inicio (no lo oculta)


SIPpanel(Activar)
Habilita y deshabilita el SIP panel.


Aquí va un ejemplo de como útilizarla.


(…)
using MobileNUG.Device;


public partial class Form1 : Form
{
   
//Declaramos el nuevo objeto MobileNUG.Device.Kiosco
    Kiosco
mnugKiosco;
   

    public
Form1()
    {
        InitializeComponent();
   
    //Inicializamos el componente kiosco
       
mnugKiosco = new MobileNUG.Device.Kiosco(this.Handle);
   
    //Habilitamos el modo kiosco
   
    mnugKiosco.ModoKiosco(true);
    }
   
   
private void Form1_Closing(object sender, CancelEventArgs e)
    {
   
    //Desactivamos el modo kiosco
       
mnugKiosco.ModoKiosco(false);
    }
}


También podéis descargaros la solución completa en MobileNUG en este enlace.


Ejemplo MobileNUG.Device.Kiosco


Si solo queréis descargaros la librería podéis hacerlo aquí.


El ejemplo y la solución están en C# para Compact Framework 2.0 pero es muy fácil pasarla a VB.NET y también es compatible con Compact Framework 3.5 y Visual Studio 2008.


¡Espero que os sea útil!


Un saludo a todos desde MobileNUG
José Antonio


Mobile .NET Users Group

2 comentarios en “Compact Framework y las aplicaciones en modo Kiosco”

  1. En el PC tengo el NET FrameWork instalado para que funcionen las aplicaciones .NET, pero en la PDA no lo había probado.

    ¿Me podrías decir si necesito instalar alguna aplicación adicional?

    Tengo un WM 6.0

  2. En principio se trata de una librería dll para que podáis utilizarla en desarrollos sobre CF.

    En el artículo puedes encontrar el enlace a la “Solución completa”, se trata de un proyecto para Smart Device de Compact Framework.

    Para compilar la solución necesitas, el Visual Studio 2005 o 2008 y el SDK de Windows Mobile 6.0

    Si lo que quieres es ejecutar la aplicación para verla y no dispones del Visual Studio (no vale la versión express) pideme el ejecutable y lo colgare 🙂 en principio no es necesario instalar ninguna aplicación adicional en la PDA.

    Un saludo.

Deja un comentario

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