¿Estoy tratando de averiguar si hay una manera de insertar un back-end de Python en una aplicación de AIR? Estoy buscando emplear un enfoque similar al que se describe aquí para implementar la lógica de negocios para mi aplicación, pero además, me gustaría proporcionar al usuario un único binario que puedan cargar. No quiero que el usuario tenga que iniciar un proceso de servidor separado para que esto funcione. ¿Es esto posible de alguna manera o no tengo suerte?

0
jkp 21 sep. 2009 a las 21:25

3 respuestas

La mejor respuesta

No puede incrustar su servidor Python en una aplicación de AIR. Así que básicamente no tienes suerte.

La solución más simple probablemente sea ejecutar un servidor en una ubicación central a la que todos sus usuarios puedan conectarse desde sus aplicaciones de AIR. Eso significa que todos / la mayoría de los datos estarán en su servidor, y no en la computadora de los usuarios, no sé si eso es un gran problema, pero supongo que lo es.

Además, dependiendo de sus sistemas de destino, puede crear el programa que desea sin (completamente) dependiendo de AIR. Puede generar ejecutables para Windows y OSX desde Flash CS3 / 4 o puede usar un creador de ejecutables (comercial) especial que proporciona más funcionalidades. Envolver este exe y su programa python en un meta-ejecutable que inicie ambos debería ser posible con algo de trabajo. Por supuesto, no tendrá los beneficios si el instalador de AIR, etc. en este caso.

1
Simon Groenewolt 21 sep. 2009 a las 18:41

Probablemente. Estamos utilizando un servidor J2EE que utiliza los servicios web SOAP para comunicarse con nuestra aplicación AIR en la interfaz. Debería poder hacer lo mismo porque al jabón no le importa qué tecnología se encuentra a cada lado.

Siempre puede hacer que la aplicación se inicie desde un único binario que primero enciende el servidor, luego el cliente, si se espera que ambos se asienten en el sistema de los usuarios. También le brinda flexibilidad para tener un modelo más orientado al servicio más adelante, si así lo desea. Sin saber qué hace su aplicación, es difícil saber si eso tiene sentido o no.

Para configurar el lado python de los servicios web SOAP, aquí hay un enlace útil a un artículo diveintopython. Luego, si tiene su servidor ejecutándose con el wsdl, FlexBuilder puede generar el lado AIR de los servicios web para usted.

1
Bill the Lizard 4 ago. 2012 a las 01:56

Bien, ya que no parecía posible hacerlo de esa manera, se me ocurrió una alternativa que parece funcionar para lo que quiero.

En lugar de intentar incrustar Python dentro de AIR, he dado la vuelta: estoy construyendo mi código de Python en un ejecutable independiente usando PyInstaller y agrupando la aplicación AIR como recurso. El código Python luego inicia su servidor web y dispara la aplicación AIR que luego puede conectarse a los servicios remotos (locales) según sea necesario.

1
jkp 21 sep. 2009 a las 20:43