Uso de JavaFX Mobile para luchar contra las condiciones de la interfaz de usuario (1)
Este artículo proporciona una guía para principiantes sobre el desarrollo de JavaFX Mobile, pero debido a que todo el desarrollo de JavaFX se basa en el mismo SDK y las mismas herramientas, es fácil comprender en general que JavaFX SDK y sus herramientas de desarrollo son útiles para el desarrollo. Las aplicaciones móviles JavaFX proporcionan simulación móvil en lugar de proporcionar un SDK móvil JavaFX separado. Joshua Marinacci del grupo Java Swing de Sun mencionó en su blog reciente No existe JavaFX Mobile. Solo existe JavaFX
La ubicuidad de Java en dispositivos móviles. Los dispositivos hacen que la premisa de escribir una vez ejecutado en cualquier lugar (WORA) sea difícil de cumplir en los cientos y miles de pantallas de dispositivos móviles que seguirán. Con el lanzamiento de JavaFX Mobile, la comunidad Java tiene una herramienta para combatir esta fragmentación de la interfaz de usuario del dispositivo. /p>
Sintaxis de JavaFX y cooperación con Java
JavaFX es una arquitectura de producto compuesta por JavaFX Script y JavaFX MobileJavaFX Script (JavaFX para abreviar) es un lenguaje de programación diseñado para proporcionar una interfaz de usuario más rica y como el nombre sugiere JavaFX Mobile es la plataforma móvil JavaFX
JavaFX Script utiliza una sintaxis declarativa similar a JavaScript y Scalar Vector Graphics (SVG), como Aquí está el código JavaFX (sin importaciones) para crear un pequeño saludo ventana de tipo mundial como se muestra en la Figura Figura Figura
? Etapa {
título: Cool Running
ancho:
altura:
escena: Escena {
contenido: Texto {
fuente: Fuente {
tamaño:
}
x:
y:
relleno: Color VERDE
contenido: JavaFX es genial
}
}
}
Como puedes ver JavaFX hay similitudes pero no es lo mismo que Java y/o JavaScript
El estilo declarativo de JavaFX es muy obvio en comparación con el estilo de programación Java Swing. El siguiente código Swing (aún (sin importaciones) crea la misma ventana de hola mundo que el ejemplo de JavaFX anterior.
? public class Main {
public static void main(String[] args) {
JFrame aFrame = new JFrame( Cool Running ); setSize( );
contenido de JPanel = nuevo JPanel();
contenido setLayout(nuevo BorderLayout( )); /p>
JLabe
l aLabel = new JLabel( Swing es genial
aLabel setFont(new Font(null Font PLAIN ));
aLabel setForeground(Color VERDE
agregar contenido (aLabel BorderLayout CENTER);
aFrame setContentPane(content);
aFrame setVisible(true); setDefaultCloseOperation(JFrame EXIT_ON_CLOSE);
}
}
Preste atención a las características necesarias de Swing (como indicar el flujo de control línea por línea). cosas se utilizan en el desarrollo tradicional de la interfaz de usuario de Java. La figura muestra los resultados del código Java Swing
Como se mencionó anteriormente, JavaFX no es Java ni JavaScript, pero los scripts JavaFX pueden llamar o ser llamados por Clases Java Por ejemplo, en la interfaz El tamaño del objeto Stage del script JavaFX que determina el tamaño de la ventana se reescribe utilizando la clase Java Math estándar
var i =
var. j = ;
Etapa {
título: Cool Running
ancho: java lang Math max(i j)
alto: p>
escena: Escena {
Sun afirma que la capacidad de JavaFX para cambiar el código Java existente es una de sus ventajas sobre otras tecnologías RIA como Adobe Flex. Además, JavaFX Script proporciona una plataforma para la construcción. cualquier aplicación, según la definición de Sun, está destinada a su uso en el desarrollo de UI en lugar de componentes comerciales o de back-end
Arquitectura móvil JavaFX
en la que dependen las aplicaciones JavaFX. ejecutando el tiempo de ejecución de JavaFX en la máquina virtual Java (JVM) Para aplicaciones móviles, JavaFX se ejecuta en Java ME JVM (ver Figura y Figura)
La API JavaFX actual se divide en dos categorías de elementos API mon y escritorio. Estas categorías son llamados perfiles y contienen elementos que admiten una variedad de requisitos de interfaz de usuario y capacidades de plataforma en sus perfiles. El perfil común proporciona muchas clases que admiten dispositivos móviles y de escritorio. En otras palabras, proporciona soporte para todas las JVM que se ejecutan en la JVM (The. plataforma en Java ME o Java SE JVM) proporciona el perfil de escritorio UI estándar más bajo y proporciona capacidades más avanzadas para admitir plataformas más grandes y ricas
Para crear todos los elementos necesarios en el formulario, los desarrolladores de aplicaciones deben conservar el perfil mon Los desarrolladores que planean implementar una plataforma de escritorio o un navegador de escritorio normal pueden optar por mejorar sus aplicaciones con la API proporcionada por el perfil de escritorio
Soporte de dispositivo y configuración de aplicaciones
Entonces, ¿qué dispositivos son compatibles con JavaFX Mobile y cómo habilita su aplicación para implementar estos dispositivos? Actualmente no hay productos en el mercado que utilicen JavaFX, pero cuando se lanza JavaFX Mobile, Sun vende sus productos a muchos fabricantes de equipos, incluido LG. S
print Sony Ericcson ha anunciado que está trabajando para ofrecer productos compatibles con JavaFX en un futuro próximo
Aunque los detalles sobre dispositivos JavaFX específicos todavía son vagos por el momento, Sun ha dejado claro que JavaFX no es para todos dispositivos móviles El hecho de que un dispositivo MIDP/CLDC sea compatible con Java ME no significa en última instancia que también sea compatible con JavaFX. JavaFX está diseñado para dispositivos que cumplen con la Especificación de plataforma (JSR) de arquitectura de servicio móvil (MSA). El dispositivo MIDP/CLDC JavaFX debe admitir API con funciones de teléfonos inteligentes. Estas incluyen administración de información personal (PIM), comunicaciones inalámbricas, gráficos y multimedia móvil. En cuanto a cómo se implementan las aplicaciones JavaFX en los dispositivos, existen esencialmente dos opciones para los desarrolladores de Java ME. Común
Incrustarlo en el dispositivo
Enviarlo (por aire) al dispositivo
Porque JavaFX es Organizaciones con. MSA que se ejecuta sobre JavaME en dispositivos móviles debe aprovechar la infraestructura y los mecanismos de implementación de Java ME existentes
Cree una aplicación JavaFX Mobile
Ahora ya sabe qué es JavaFX Mobile. Entonces, ¿cómo se construye? ¿Una aplicación JavaFX Mobile? Esta sección es una guía para principiantes sobre el desarrollo de JavaFX Mobile. Explica cómo obtener la tecnología que necesita, cómo configurar un entorno y cómo desarrollar y ejecutar la aplicación Hello World (que se muestra arriba). >
Los programas JavaFX se pueden crear oficialmente en plataformas Windows y Mac OS. Sun no proporciona un producto Linux, pero los desarrolladores han encontrado una manera de desarrollar programas JavaFX en Linux usando el complemento NetBeans. Esta vez, el tiempo de ejecución y el simulador de JavaFX Mobile solo se proporcionan para la plataforma Windows
Los detalles específicos sobre los requisitos del sistema para Windows y Mac OS se pueden encontrar en el sitio. Debe tener un JDK relativamente nuevo (necesidades de Windows). al menos una versión más nueva y Mac OS necesita al menos una versión más nueva)
Además del entorno Java básico, también necesita el SDK de JavaFX (consulte la guía de instalación El programa de descarga e instalación). La versión de Windows es de MB y Mac OS es de MB. Al instalar el SDK, si el entorno del SDK de Java correspondiente no puede encontrar la instalación, puede instalar el SDK de Java siguiendo algunos pasos (consulte la Figura para ver la instalación del SDK de JavaFX en la barra de Windows). )
Trabajar con JavaFX
El SDK de JavaFX proporciona una serie de herramientas de línea de comandos para compilar, ejecutar y probar JavaFX. El programa también proporciona un emulador de dispositivo móvil con el SDK para ejecutar y ejecutar. prueba de programas JavaFX Mobile
La herramienta Javafxc se utiliza de la misma manera que la herramienta javac exe estándar. El compilador toma el código fuente de JavaFX (el código se guarda en el archivo fx) y lo compila en código de bytes de Java. la clase (archivos de clase) muestra cómo compilar el código JavaFX Hello World discutido anteriormente, que luego se guarda en un archivo llamado Test fx, usa el exe javafxc y la Figura muestra cómo ejecutarlo usando el exe javafx.
En el directorio bin se proporciona el paquete JavaFX y la herramienta de empaquetado de archivos (javafxpackager exe), que es más interesante para los desarrolladores móviles.
Porque proporciona una forma de crear un paquete listo para dispositivos móviles para su implementación en dispositivos móviles o emuladores, pero la herramienta de empaquetado también se puede utilizar para crear programas listos para el navegador o Web Start a través del código JavaFX.
Para dispositivos móviles o para Para crear archivos Java Application Descriptor (JAD) y JAR para la implementación del simulador, debe al menos proporcionar a la herramienta javafxpackager la ubicación del código fuente del archivo fx (no está compilado en un archivo de clase) y el nombre de la clase principal. o clase de puntos para el inicio del programa p>
De forma predeterminada, javafxpackager crea un conjunto de archivos de implementación para el navegador o la implementación de Web Start. Para crear archivos JAD y JAR para la implementación móvil, también debe usar la opción móvil -p -p. para perfil en la solicitud de línea de comando. Y puede mostrar este modificador en las opciones de dispositivos móviles o de escritorio.
Aquí está el comando javafxpackager completo del archivo Test fx (ubicado en la carpeta c:\jfx en este ejemplo). para crear un programa listo para dispositivos móviles
javafxpackager src c:\jfx appClass Test p mobile d c:\jfx\dist
La opción –src especifica la fuente del código de script JavaFX que appClass especifica el nombre de la clase principal y es opcional. La opción -d especifica el destino de salida (los archivos JAD y JAR. Los resultados se muestran en la Figura
A continuación, sin la opción -p mobile (o especificando). -p escritorio) javafxpackager crea los archivos HTML JAR y JNLP que se usan para la ejecución del navegador o Web Start como se muestra en la Figura
Con la versión de Windows de JavaFX SDK es un emulador para probar el programa. Puede usar /. emulator/bin ubicado en el directorio de instalación de JavaFX SDK. Busque un exe del emulador en la carpeta. Para probar el archivo JavaFX JAD/JAR producido por javafxpackager, llame al archivo JAD en la herramienta del emulador. Utilice la opción –Xdescriptor: para especificar. el archivo JAD a ejecutar. Consulte la figura
lishixinzhi/Article/program/Java/JSP/201311/19281
.