A continuación encontrarás traducido al castellano el artículo de Paul Lefebvre publicado originalmente en el blog oficial de Xojo.
Android continúa en Beta, pero Xojo 2023r3 incluye varias correcciones de errores y mejoras, de entre las cuales me gustaría destacar algunas de ellas.
Si bien Xojo para Android aun no soporta completamente el modo oscuro, todo progresa en la buena dirección. Anteriormente tu app debía ajustar su UI para los modos claro/oscuro cuando se activaba la propiedad “Support Dark Mode” en los Ajustes de Compilación Android.
Comenzando con Xojo 2023r3, Color.TextColor y Color.FillColor también ajustan sus valores cuando se está ejecutando la app en modo claro o en modo oscuro, haciendo así que resulte más sencillo adaptar cualquier dibujado personalizado.
MobileTextField también incluye un par de novedades. Ahora se invoca el evento ReturnPressed cuando, tal y como sugiere su nombre, se pulsa la tecla Retorno. La propiedad AllowSpellChecking también se encuentra ahora disponible tanto para MobileTextField como para MobileTextArea.
En el Inspector correspondiente a Shared Build Settings, encontrarás ahora la propiedad Destination tal y como sucede con otras plataformas.
Muchos dispositivos Android disponen de botones físicos para “volver”, y todos ellos te permiten activar controles globales por software que tiene un botón de “volver”, pero en algunas ocasiones quieres que el biotón “volver” esté claramente indicado en la barra de navegación. Ahora puedes utilizar la propiedad HasBackButton de MobileScreen para mostrarlo ahí.
Para hacer que resulte más sencillo escribir código que sea aplicable tanto a iOS como a Android, pero no a otras plataformas, ahora encontrarás una constante TargetMobile disponible y que puedes utilizar en la compilación condicional.
MobilePopupMenu es un nuevo control de Android que hace posible simplificar algunas de tus interfaces de usuario. Funciona de modo similar a como lo hace PopupMenu en Desktop o Web: cuando el usuario hace tap sobre este control se muestra una lista de elementos para permitir la selección de uno de ellos.
En la pestaña Advanced de los Ajustes de Compilación Android (Android Build Settings) encontrarás una nueva sección Manifest con una propiedad Permissions. Aquí puedes indicar los nombres de las constantes de permisos Android necesarias para los Declares o las librerías. Estas se añadirán al archivo AndroidManifest.xml cuando se ejecute o cree la app.
MobileHTMLViewer también ha recibido varias mejoras. Ahora incluye varios eventos de procesado, como por ejemplo: DocumentBegin, DocumentComplete, CancelLoad, Error, NewWindow, DocumentProgressChanged, y TitleChanged.
Ahora también se incluye soporta para ejecutar JavaScript utilizando el método ExecuteJavaScript en combinación con los eventos JavaScriptResult y JavaScriptRequest. ExecuteJavaScript es asíncrono y sus resultados aparecen en el evento JavaScriptResult. Para invocar el evento JavaScriptRequest, utiliza Xojo.Execute() en el código JavaScript. Se puede pasar al lado de Xojo el nombre de un método y hasta cinco parámetros.
Lo último que quiero destacar es el nuevo Declare Kotlin. Para usuarios avanzados, este añade la capacidad de crear declares Android que pueden pasar llamadas mediante Alias al paso de compilación de Kotlin (con la excepción del manejo de los tipos/objetos requeridos). Esto se lleva a cabo indicando Lib “Kotlin” o bien añadiendo “:Kotlin” al final de de Lib. He aquí algunos ejemplos:
Declare Function AndroidVersion Lib "Kotlin" Alias "android.os.Build.VERSION.RELEASE" As CString
Declare Sub findAllAsync Lib "Object:ctrl:MobileHTMLViewer:Kotlin" Alias "findAllAsync(myfind.toString())" (myFind As CString)
Por supuesto, también se han corregido múltiples fallos. Asegúrate de leer las notas de revisión para obtener todos los detalles.