Ver la versión completa : Programar en iPhone y otros móviles
saboteur
22/12/2010, 14:16
Le estoy dando vueltas a hacer algún jueguecillo para iPhone, incluso para otros móviles. Ahora mismo estoy mirando compiladores, etc.
Para iPhone tenemos el IOS SDK+XCODE (que en Leopard no me funciona, por lo visto es para Snow Leopard), para Android el ANDROID SDK (con miles de versiones) y luego he visto otro entorno de desarrollo llamado AirPlay SDK que te compila para el móvil o plataforma que quieras (que en Mac tampoco me funciona, en windows sí).
¿Alguien puede orientarme o tiene experiencia sobre qué sería mejor programar, ventajas y desventajas? Preferiría C o C++ (por lo que AirPlay podría ser una opción), pero no tengo problemas en aprender cosas nuevas (aunque el objective-c me parece bastante raro). Y sobre todo... ¿hay alguna otra forma de programar estos cacharros?
^MiSaTo^
22/12/2010, 14:20
Para iPhone necesitas Xcode o te complicarás la vida además de que puede ser que Apple no te apruebe lo que haces si no usas su SDK oficial y demás (quitando frameworks de juegos como Cocos2D, y similares).
Para la última versión del SDK (y desde la 4.0) necesitas Snow Leopard. Puedo tener yo por el PC la 3.1.3 de Leopard pero son como 2GB.
Yo no se cómo es usar C/C++ con el SDK de Android (se que se puede pero no se cómo va) pero en iPhone, el compilador es gcc, asíque puedes mezclar código C/C++ con Obj-C sin ningún problema. (De hecho en algunos casos es mejor hacer cosas en C++ porque come menos recursos que obj-C, para el tema de juegos me refiero).
Para Android yo te recomiendo el Eclipse y el plugin AWT (el oficial de android vaya) que te irá en cualquier lado (o al menos a mi me ha funcionado en linux y mac sin ningún problema).
Saludos!
Para Android también tienes el NDK http://developer.android.com/sdk/ndk/index.html ahora que, como usarlo? pues por el momento lo estoy intentando averiguar.
saboteur
22/12/2010, 14:36
Para iPhone necesitas Xcode o te complicarás la vida además de que puede ser que Apple no te apruebe lo que haces si no usas su SDK oficial y demás (quitando frameworks de juegos como Cocos2D, y similares).
Era una de las cosas que me daba miedo de Apple. Pero si se puede programar en iphone con c++, casi que me arregla la vida. XD
El 3.1.3 lo he probado pero también me ha dado errores, no sé qué le pasa a este Mac con el iPhone. A ver qué encuentro de c++ y iphone, que me están dando unas ganas de darle una patada al móvil este que pa qué....... ;) Y con NDK igual, a ver si le echo otro ojo.
^MiSaTo^
22/12/2010, 14:44
Era una de las cosas que me daba miedo de Apple. Pero si se puede programar en iphone con c++, casi que me arregla la vida. XD
El 3.1.3 lo he probado pero también me ha dado errores, no sé qué le pasa a este Mac con el iPhone. A ver qué encuentro de c++ y iphone, que me están dando unas ganas de darle una patada al móvil este que pa qué....... ;) Y con NDK igual, a ver si le echo otro ojo.
Usar c++ es inmediato, no tienes que hacer nada raro. Simplemente el archivo en vez de ser .cpp será .mm (si no recuerdo mal) y luego su .h correspondiente ;)
Pero vamos que puedes incluso en una clase Obj-C meter una función normal de C y tan ricamente ;)
Sep, no se mucho de objective-c/cocoa y demás productos del arbol frutal del manzano, pero sí sé que tal y como dice misato, se puede programar totalmente en c++ salvo por la función main y algunas funciones de inicialización que deben ser objective-c. Desconozco si para llamar a la api también se debe usar obj-c. ¿Es eso cierto misato?
hay algun problema de trabajar con XCode en un hackintox?? (tiene alguna forma de comprobarlo apple? supongo que no)
aparte de eso, para empezar tengo SN 10.6.2 y me pide 10.6.4, no hay alguna version que funcione con 10.6.2 es que no puedo actulizar el hackintox por tema de versiones, drivers, etc.
Aiken
IronArthur
22/12/2010, 15:14
Sep, no se mucho de objective-c/cocoa y demás productos del arbol frutal del manzano, pero sí sé que tal y como dice misato, se puede programar totalmente en c++ salvo por la función main y algunas funciones de inicialización que deben ser objective-c. Desconozco si para llamar a la api también se debe usar obj-c. ¿Es eso cierto misato?
Entonces si en su momento cuando lo miré lo entendí bien, en android con el NDK es "similar": la clase principal es java y el resto es c++.
Salu2
saucjedi
22/12/2010, 15:40
Entonces si en su momento cuando lo miré lo entendí bien, en android con el NDK es "similar": la clase principal es java y el resto es c++.
Salu2
El NDK convierte tu aplicación automáticamente en no portable. Lo que pasa es que casi todos los teléfonos llevan un ARM (que es el único NDK que había cuando lo miré), pero como te topes con algo que no sea ARM, esa app no va a funcionar.
firesign
22/12/2010, 15:53
A mi el Eclipse + ADT me funciona en Snow Leopard, pero con problemas. Ya he tenido que reinstalarlo 3 veces, porque autodestruye algunos de sus propios ficheros del SDK de Android... No tengo ni idea de que le pasa, pero literalmente los borra.
IronArthur
22/12/2010, 20:01
El NDK convierte tu aplicación automáticamente en no portable. Lo que pasa es que casi todos los teléfonos llevan un ARM (que es el único NDK que había cuando lo miré), pero como te topes con algo que no sea ARM, esa app no va a funcionar.
Ahora hay en el NDK: ARMv5TE, ARMv7-A
Y en teoría en futuro van a integrar x86 (aunque no le veo mucha gracia).
Y la verdad es que no se me ocurre ningún chisme que no sea arm ahora mismo con android.
Y lo de la pérdida portabilidad en el momento que se quiera usar c++ creo q se da por supuesto.
Salu2
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions Inc. All rights reserved.