2011-08-29 11 views
5

Voy a empezar a desarrollar para Android. Me preguntaba cuáles son las principales diferencias que debería tener en cuenta. Particularmente, ¿cómo lidiar con tantos dispositivos y tantas resoluciones para apoyar? ¿Es esto fácil de hacer con el SDK o un dolor?Desarrollo de Android para el desarrollador de iOS

También estoy usando un mac, ¿qué IDE es el mejor y puedo usar Xcode para desarrollar?

Gracias.

+0

simplicidad será la principal diferencia ... Me – jondavidjohn

+1

consejos que vaya empezar a leer sobre developer.android.com. – Perception

Respuesta

7

Estaba una vez en sus zapatos. Aconsejo usar Eclipse y los complementos ADT, ya que son las mejores herramientas para el trabajo. Usar XCode solo te traerá dolor.La principal diferencia, por supuesto, es que usarás Java en lugar de Objective-C como idioma central, aunque en ambas plataformas puedes usar C (NDK con Android, C nativo con iPhone) descascarado en un envoltorio de Java /C objetivo.

La otra diferencia principal es en el iPhone que diseña la interfaz y la base de datos con herramientas visuales (Interface Builder/Core Data) como herramienta preferida (aunque siempre puede codificar su interfaz y escribir su SQL) y en Android que mejor escriba la interfaz de usuario como XML y escriba su código SQL de todos modos. No aconsejaría el constructor visual de UI en Android, al menos no puedo usarlo: p

Aparte de eso, Android gira principalmente en torno a Intents y iPhone utiliza las interacciones entre NSController y NSNotificationCenter para lograr el mismo propósito. Android tiene acceso preferente a OpenGL con llamadas Java (aunque puede ajustar C con NDK) y iPhone utilizará llamadas directas de OpenGL ES C.

Tenga en cuenta que Java ya no se incluye con OS X Lion, por lo que tendrá que realizar un poco de configuración, pero como necesita el SDK de todos modos, no es gran cosa. Finalmente, está la cuestión del tamaño de la pantalla, pero probablemente apuntes a un tipo de dispositivo en particular (tableta, teléfono y luego decidas qué tamaños para ese factor de forma trabajarás). Si forma aplicaciones, no es un gran problema, si hace juegos, estará bien servido para decidir sobre un objetivo de despliegue en particular y expandir sus opciones una vez que su juego se venda.

Buena suerte, compañero de AndroiPhoner: p

+0

Gracias. Me gustaría saber algunos más si no te molesta. Solo haz una lista de la comparación más cercana en Android. - NSNotificationCenter - Técnicas de devolución de llamada, específicamente bloques/funciones anónimas? - Notificaciones remotas. Notificaciones locales? - Contenedores: UITabBarController, UINavigationController, UIPopoverController. - Transiciones. iOS6 -> UIStoryboardSegues subclasificados. iOS7 -> transiciones personalizadas. ¿Cuál sería el equivalente en el Android moderno? - Bloques de animación de UIView. – VaporwareWolf

2

Acabo de empezar a aprender Android, estaba haciendo iPhone de antemano.

Cada uno tiene sus pros y sus contras, no debería tener ningún problema para trabajar con Android.

El lenguaje Java es mucho mejor para trabajar que el objetivo c. iPhone tiene un mejor diseñador de GUI.

Particularmente, ¿cómo manejar tantos dispositivos y tantas resoluciones para apoyar? ¿Es esto fácil de hacer con el SDK o un dolor?

Go lea los tutoriales principales. No es difícil en absoluto cuando se planea desde el principio. Es como diseñar para una página web.

También estoy usando un mac, ¿qué IDE es el mejor y puedo usar Xcode para desarrollar ?

Eclipse sería el soporte oficial de Google. IntelliJ también aparece en el tutorial de Google, por lo que es otra opción, sin embargo, no lo he probado. Cualquier otra cosa que tenga que investigar si tiene suficiente apoyo.

Editar: Ahora iría con Android Studio para el desarrollo de Android, hecho por Google y basado en IntelliJ.

+0

Con respecto a 'Eclipse. Sugiero solo utilizarlo ya que es el único compatible de Google. Google hace todo lo posible para no suponer que estás usando Eclipse. Entonces no estaría de acuerdo con esta declaración. Algunos tipos en nuestro equipo como Eclipse. Personalmente prefiero IntelliJ. No he tenido absolutamente ningún problema con IntelliJ. En todo caso, siento que he tenido un tiempo más fácil que mis cohortes que usan Eclipse. Depende de ti. – Steve

+0

He oído hablar de IntelliJ pero no he probado su compatibilidad con Android, entonces editaré mi comentario. – Zammbi

+0

Técnicamente, cualquier editor de texto podría funcionar. Puedes construir un proyecto desde la línea de comando (no es lo que yo quisiera). Creo que Eclipse es el único IDE compatible con el diseñador de interfaz de usuario de arrastrar y soltar de Google. Pero, en todos los demás aspectos, creo que el soporte de IntelliJ para Android es superior al de Eclipse. Pero esa es más o menos mi opinión personal. No estoy en desacuerdo con la publicación de lo contrario. Solo quería lanzar mi $ 0.02 – Steve

5

Primero, consiga la confianza con android como usuario. Hay algunas diferencias fundamentales y algunas convenciones visuales diferentes. Comience con Eclipse (como se documenta en el sitio web de desarrolladores de Android), le ayudará a comenzar de la manera más fácil (ya hay suficientes cambios para tratar) Lectura de actividades, funcionan un poco como ViewControllers, pero no del todo. En cuanto al diseño de GUI: debe adoptar un enfoque más sólido. Ajustar al último píxel no es práctico. Me parece más como diseñar una página web. Hay un constructor de interfaz visual en Eclipse pero tiene fallas, habrá profundizado en los archivos XML de diseño de vez en cuando.

3

He estado programando para Android durante seis meses y ahora he cambiado a iOS. Puede iniciar la programación de Android con este tutorial oficial.

Necesita comprensión básica de OOP. El diseño de Android es más complejo en comparación con iOS. Android admite múltiples resoluciones de pantalla. Debe tratar con HTML y XML básicos para el diseño de la interfaz de usuario para habilitar diseños horizontales y verticales en Android. Tienes que entender Linearlayout y Relaivelayout todo correctamente.

Aquí está Multiscreen Support Guide.

Cuestiones relacionadas