Con PyObjC , puede usar Python para escribir aplicaciones Cocoa para OS X. ¿Puedo escribir aplicaciones nativas para iPhone usando Python y, de ser así, cómo?
iphone
python
cocoa-touch
Davidmytton
fuente
fuente
Respuestas:
Actualmente no, actualmente los únicos idiomas disponibles para acceder al SDK de iPhone son C / C ++, Objective C y Swift.
No hay ninguna razón técnica por la que esto no pueda cambiar en el futuro, pero no aguantaría la respiración porque esto suceda en el corto plazo.
Dicho esto, Objective-C y Swift realmente no dan demasiado miedo ...
fuente
También puede usar PyObjC en el iPhone, debido al excelente trabajo de Jay Freeman (saurik). Consulte Aplicaciones de iPhone en Python .
Tenga en cuenta que esto requiere un iPhone con jailbreak en este momento.
fuente
Parece que esto es ahora algo que los desarrolladores pueden hacer: el Acuerdo de desarrollador de iOS se cambió ayer y parece haber sido enmendado de tal manera que la incorporación de un intérprete de Python en su aplicación sea legal:
SECCIÓN 3.3.2 - INTÉRPRETES
Antiguo:
Nuevo:
fuente
Sí tu puedes. Escribe su código en tinypy (que es Python restringido), luego usa tinypy para convertirlo a C ++, y finalmente compila esto con XCode en una aplicación nativa de iPhone. ¡Phil Hassey ha publicado un juego llamado Elephants! utilizando este enfoque. Aquí hay más detalles,
http://www.philhassey.com/blog/2009/12/23/elephants-is-free-on-the-app-store/
fuente
Sí, hoy en día puedes desarrollar aplicaciones para iOS en Python.
Hay dos marcos que es posible que desee verificar : Kivy y PyMob .
Considere también las respuestas a esta pregunta , ya que están más actualizadas que esta.
fuente
Una actualización del Acuerdo para desarrolladores de iOS significa que puede usar lo que quiera, siempre que cumpla con las pautas para desarrolladores. La sección 3.3.1, que restringía lo que los desarrolladores podían usar para el desarrollo de iOS, se ha eliminado por completo.
Fuente: http://daringfireball.net/2010/09/app_store_guidelines
fuente
Pythonista tiene una función Exportar a Xcode que le permite exportar sus scripts de Python como proyectos de Xcode que crean aplicaciones independientes de iOS.
https://github.com/ColdGrub1384/Pyto también vale la pena investigarlo.
fuente
El acuerdo del iPhone SDK también es bastante vago sobre si se le permite ejecutar lenguajes de scripting (fuera del Javascript de WebView). Mi lectura es que está bien, siempre y cuando ninguno de los scripts que ejecute se descargue de la red (por lo que los scripts preinstalados y editados por el usuario parecen estar bien).
IANAL, etc., etc.
fuente
BeeWare es un marco de código abierto para la creación de aplicaciones nativas de iOS y Android.
fuente
Actualización de 2019:
Si bien el desarrollo de Python-iOS es relativamente inmaduro y probablemente evitará (afaik) que su aplicación tenga una interfaz de usuario nativa y una funcionalidad que podría lograrse en un lenguaje de desarrollo compatible con Apple, Apple ahora parece permitir la incorporación de intérpretes de Python en Native Swift / Obj-C aplicaciones.
Esto admite la importación de bibliotecas de Python y la ejecución de scripts de Python (incluso con argumentos de línea de comandos proporcionados) directamente desde su código nativo Swift / Obj-C.
¡Mi empresa en realidad está envolviendo nuestra infraestructura (originalmente escrita en Python) en una aplicación nativa de iOS! Funciona muy bien y la comunicación entre las partes se puede lograr fácilmente a través de un modelo cliente-servidor.
Aquí hay una buena biblioteca de Beeware con una plantilla de cortador de galletas si desea probar y ejecutar scripts de Python en su aplicación iOS: https://github.com/beeware/Python-Apple-support/tree/3.6 .
fuente
Técnicamente, siempre que el código interpretado NO SE descargue (excluyendo JavaScript), la aplicación puede ser aprobada. El marco Rhomobiles "Rhodes" hace precisamente eso, agrupando Ruby móvil, una versión ligera de Rails y su aplicación para su distribución a través de la tienda de aplicaciones. Debido a que tanto el intérprete como el código interpretado están empaquetados en la aplicación final, Apple no lo encuentra objetable.
http://rhomobile.com/products/rhodes/
Incluso después del último comunicado de prensa de Apple, las aplicaciones de Rhodes (ruby móvil) siguen siendo viables en la tienda de aplicaciones. Me resultaría difícil creer que tinyPy o pyObjC no encontrarían un lugar si hubiera una comunidad de desarrolladores dispuesta.
fuente
Puede hacer esto con PyObjC, con un teléfono con jailbreak, por supuesto. Pero si desea ingresarlo a la App Store, no lo permitirán porque "interpreta el código". Sin embargo, es posible que pueda usar Shed Skin , aunque no tengo conocimiento de que nadie lo haga. Sin embargo, no puedo pensar en ninguna buena razón para hacer esto, ya que pierde la escritura dinámica y también podría usar ObjC.
fuente
El único lenguaje "externo" significativo para el desarrollo de iPhone que conozco con soporte semi-significativo en términos de marcos y compatibilidad es MonoTouch , un entorno C # / .NET para desarrollar en iPhone.
fuente
Creo que no era posible antes, pero recientemente escuché sobre PyMob, lo que parece interesante porque las aplicaciones están escritas en Python y los resultados finales son códigos fuente nativos en varias plataformas (Obj-C para iOS, Java para Android, etc.). Esto es ciertamente bastante único. Esta página web lo explica con más detalle.
Todavía no lo he probado, pero lo echaré un vistazo pronto.
fuente