Hola !

Nuevo post para la serie de Windows 10 y Raspberry Pi 2

  1. Hardware y software (1 de N)
  2. Montando la SD en el device (2 de N)
  3. Ahora si el Hello World ! (3 de N)
  4. Sobre el proceso de despliegue desde VS y Web Management app (4 de N)
  5. Hello Blinky !!! (5 de N)
  6. Acciones de administrador, cambiar password, cambiar nombre, etc (6 de N)
  7. Accediendo a los devices conectados (7 de N)
  8. Desplegando una app desde un paquete (8 de N)
  9. Diferentes comportamientos en base arquitectura de la app

Si eres un developer de vieja escuela, cuando te cambian una de las APIs más antiguas te puede dar un infarto. Eso es lo que ha pasado con la clásica System.Environment. La siguiente imagen muestra la diferencia que tenemos entre una app clásica WPF con .Net 4.5 y una Universal App para Windows 10.

Clipboard07

Ahora bien, una Universal App se ejecuta en un entorno controlado (sandbox), ya sea en un laptop, un smartphone o un device. Esto implica que las capacidades de la app están atadas a este Sandbox. Por ejemplo, lo que antes solíamos obtener desde el Environment, ahora tal vez debemos buscarlo en el Package de la Aplicación. La arquitectura del procesador es un ejemplo, y el siguiente código muestra un ejemplo para validar si la app se está ejecutando en un procesador ARM.

Clipboard10

Si bien la idea detrás de las Universal Apps es tener el máximo código unificado para todas las plataformas, hay que tener en cuenta las capacidades de cada plataforma. Por ejemplo, en ARM no tenemos la posibilidad de mostrar MessageDialogs así que si queremos mostrar información tenemos que hacer un poco de programación defensiva.

Clipboard12

Esto nos permite mostrar un mensaje en modo diálogo en una laptop o tablet

Clipboard14

Y para el caso de ARM, el mensaje en un TextBlock como parte de la app.

Clipboard01

El código de ejemplo en github

https://github.com/elbruno/W10Rpi2/tree/master/SystemInfoV02

Saludos @ Madrid

/El Bruno

References

Environment.Is64BitProcess, https://msdn.microsoft.com/en-us/library/system.environment.is64bitprocess(VS.100).aspx

MessageDialog, https://msdn.microsoft.com/en-us/library/windows/apps/windows.ui.popups.messagedialog.aspx

3 responses to “[#IOT] Diferentes comportamientos en base arquitectura de la app (9 de N) #RaspberryPi2 y #Windows10”

  1. […] Diferentes comportamientos en base arquitectura de la app […]

    Like

  2. […] 9. Diferentes comportamientos en base arquitectura de la app […]

    Like

  3. […] 8. Diferentes comportamientos en base arquitectura de la app […]

    Like

Leave a reply to [#IOT] WindowsIoTCoreWatcher.exe does not start y como solucionarlo | El Bruno Cancel reply

Discover more from El Bruno

Subscribe now to keep reading and get access to the full archive.

Continue reading