Ir al contenido



Foto

Instalando Android SDK y el primer "Hello world"


  • Por favor identifícate para responder
30 respuestas en este tema

#1 Sergio

Sergio

    Advanced Member

  • Moderadores
  • PipPipPip
  • 1.092 mensajes
  • LocationMurcia, España

Escrito 25 julio 2011 - 02:19

IMPORTANTE: Todo lo que aparece en esta guia queda desfasado, a finales de 2012 (yo lo he descubierto en nov.2012) google ha cambiado todo, ahora te descargas un zip para tu plataforma, lo descomprimes, y dentro tienes eclipse y todo lo relacionado con Android listo para usarse y sin instalación previa, incluyendo la última versión de las API.

Los pasos "nuevos" y simplificados son estos:

  • Descargarse el paquete (398 MB en mi caso) de aquí: http://developer.and.../sdk/index.html
  • Descomprimirlo donde queramos.
  • Entrar en eclipse y ejecutar eclipse.exe (dejar un acceso directo a mano)
  • Creo que si no tienes instalado Java JDK te permite instalarloo ahora, en mi caso ya lo tenía instalado, pero la web dice que va automático.
  • Te pregunta donde quieres el "workspace", es decir, tu carpeta para proyectos.

Ya tienes todo listo! Una ventana de bienvenida te permite ver tutoriales si quieres.

La verdad es que esto deja este tutorial como una reliquia del pasado, ahora es mucho más sencillo todo!

Mi duda es que supongo que detectó mi S.O. y me propuso descargar el paquete para windows 64bits... por lo que he leído el sistema es igual para Mac o Linux, o por lo menos igual de sencillo.


 

Hoy mismo (julio 2011) he conseguido ejecutar mi primera App de Android, un simple "Hello world" como debe ser, y os copio aquí las notas que he ido tomando en el proceso, por si alguien quiere lanzarse al mundo de la programación Android y no sabe por donde empezar.

Actualización: Tras unos meses sin darle uso, voy a reinstalar todo y así actualizo todo a Sept. 2012. Antes de nada he desinstalado todo, eclipse, java y SDK.

Otra cosa, ante cualquier duda, la fuente oficial de información es está: http://developer.and...ling/index.html


Linux o Windows:

Lo primero es decidir en que arquitectura vamos a programar, yo opté por Windows porque es lo que utilizo, pero se puede usar Linux y Mac tambien. Mi compañero de trabajo ha utilizado Ubuntu, así que os pongo aquí una serie de diferencias menores encontradas:

-No tenéis el programa independiente para descargar paquetes de android sdk y crear maquinas virtuales, pero si que aparece como botón en la barra de herramientas de eclipse, y en el menú "Windows" como en la versión windows.

-No tenéis el driver usb que permite ejecutar -y hacer debug, claro- la aplicación en un teléfono real, pero se puede crear el device USB "a mano"... bueno, es Linux, el sistema donde los hombres se solían hacen sus propios drivers!  ;) Tenéis las instrucciones oficiales aquí: http://developer.and...ing/device.html.

Nota: El driver de windows solo vale para algunos terminales como el nexus one, nexus s y similares, para otros aparatos toca buscar en Internet, y no existen para todos, ojo! (más info en el punto 7 más abajo)

-Los teléfonos virtuales para probar las aplicaciones en su Linux van más rápidos que en mi windows, y eso que mi máquina es algo superior a la suya.

-Los pasos para instalar el kit son algo diferentes en Linux, él ha seguido este tutorial en su Ubuntu con exito: http://onthefencedev...ment.com/?p=455.

-Si usas un linux 64bits, como el SDK es de 32, tienes que instalarte antes esto:

[asm]apt-get install ia32-libs[/asm]


Windows: 32 o 64 bits:

Si optáis por windows y tenéis una versión de 64 bits, tendréis que decidir si vais a usar las herramientas en versión 32 o 64 bits, ya que el Java Developer Kit, el propio Eclipse y el Android SDK están disponibles en las dos versiones, y tienen que coincidir internamente todo.

Yo opté por la de 32 bits porque la diferencia en velocidad dudo que se note y me ahorro problemas, de todas formas parece no existir ningún problema eligiendo la de 64 bits, el mejor tutorial en español que conozco, el de sgoliver.net, te propone usar la versión de 64 bits. En cualquier caso no me merece la pena probar el 64 bits y me quedo con mis 32 bits.


Elegir una carpeta para instalar todo:

Yo me he creado "C:\AndroidSDK" y dentro voy a poner todo (Eclipse + SDK), podeis elegir otra carpeta o usar dos, pero evitar usar espacios en los nombres de carpeta, hay partes del SDK que dán error si hay espacios (o lo daban cuando lo probé por última vez).


Instalación de todo lo necesario:

Desde hace poco (11-2012) en la web de android para desarrolladores tienen un paquete "completo" (de 398 MB nada más) para programar android: Incluye Eclipse, AndroidSDK, Android ADT plugin, etc. casi todo lo que aquí se comenta como descargas individuales (excepto Java JDK, peor si no lo encuentra te pregunta así que no problems).

De todas formas dejo aquí todo lo anterior por si alguien qiere hacerlo "por partes". Notad que en el link de descarga del Android SDK realmente os lleva ahora a la descarga del "mega paquete con todo", pero seguís teniendo la descarga de "solo el SDK" debajo, en el último párrafo donde pone "USE AN EXISTING IDE".


1) Eclipse (221 MB): Eclipse es el IDE que vamos a utilizar para programar, es un IDE genérico que vale para mil lenguajes, así que no es tan integrado como el de Delphi, pero hace el mismo papel.

  • En la web de eclipse tienes varios paquetes. Para el SDK de Android la propia google recomienda "Eclipse Classic" (la versión más usada es la "EE" pero lo que llev a de más no nos servirá para Android, son web services y similares).
  • Tienes versiones 32 (x86) y 64 bits, así que si decidiste probar con los 64 bits, adelante.
  • Es un zip con una carpeta "eclipse" dentro, puedes descomprimirlo donde quieras, yo la copie dentro de "C:\AndroidSDK" con lo que está en "C:\AndroidSDK\eclipse".
  • Una vez descomprimido, abre el eclipse.exe (mi win7 me advirtió de que el editor era desconocido, ya sabéis, desactivar que te pregunte la siguiente vez) y te preguntara donde quieres almacenar el workspace, es decir, la carpeta para tus proyectos. Te propone ponerlo en tu carpeta de usuario, pero yo use "C:\AndroidSDK\workspace" y marqué debajo que lo usase por defecto y no volviese a preguntarme.
  • Una vez instalado, interesa dejarse un icono a exclipse.exe en el escritorio o algún lugar accesible, se va a usar mucho!


2) JAVA SE JDK (90 MB): Es el kit de desarrollo en java (no confundir con la máquina virtual para usuarios finales), en sept. 2012 van por la V1.7 (Java 7), yo desinstale antes todo lo que empezaba por "java" desde el panel de control para no dejar versiones olvidadas.

  • Lo tienes en la web de oracle. Hay varias posibles descargas, elige la versión standard, la "Java platform (JDK)".
  • Elige el de windows 32bits (windows x86) o el de 64bits (windows x64) si asi lo decidiste antes.
  • La carpeta será la estandard de windows para nuevas aplicaciones, yo no cambie nada y no tuve problemas.

Nota: Eclipse por defecto supone que usas java 1.5, pero ya van por la 1.7, y algunas librerías necesitan al menos la V1.6 (AndEngine en mi caso). Eso hace que al importar esas librerías veáis muchos errores en las líneas del tipo "@Override". Para evitarlo, en eclipse ir a "Windows, Preferences" (o "Proyect, Preferencies" si lo necesitáis ajustar solo para un proyecto concreto), ir a "Java, Compiler" y poner "Compiler compliance level" de 1.5 a 1.6 (más info aquí)


3) Android Starter Package SDK (398 MB): Es el paquete "inicial" para programar en Android, trae herramientas para descargarse el resto de paquetes, muy al estilo repositorio de linux.

  • Lo teneis en la web del Android SDK.
  • Si no tienes Java SE JDK no te va a dejar instalar este kit, se para y espera a que lo instales con instrucciones (es lo que me ocurrio a mi).
  • Se instala por defecto en "Archivos de programa" (como el Java JDK). No lo cambié por si acaso la primera vez, pero SI que se debe cambiar porque el path no puede contener espacios (ver nota en el paso 6). Yo use -con éxito- "C:\AndroidSDK\AndroidSDK", valga la redundancia.


4) Resto del Android SDK Ahora necesitamos bajarnos el resto de paquetes del SDK.

  • Cuando termina el paso anterior te propone abrir el "SDK manager" para cargar los posibles paquetes disponibles en el SDK, márcalo y continua.
  • Lo primero que hace el "SDK manager" es actualizar la ENORME lista de paquetes disponibles (tarda poco).
  • Luego te muestra los posibles paquetes a instalar: los obsoletos te los esconde (android 3.0 por ejemplo) y los "normales" te los marca (platform tools, el SDK de la última versión de android y las herramientas genéricas como el adb y el driver USB), así que con aceptar es suficiente de momento. Luego podrás añadir más o actualizarlos volviendo a esta pantalla desde eclipse en menú "Windows".
  • Aparte de lo que se marca por defecto, antes o después tendrás que descargarte el SDK para las versiones mínimas y target de tus aplicaciones: Si vas a compilar para android 4.1 pero darás soporte para android 2.3.3 en adelante, necesitas ambos paquetes instalados, pero evita marcar todo en estas versiones, traen paquetes para moviles específicos tipo motorola que mejor no instalar si no son necesarios (algunos piden un login a sus servidores y cosas raras).
  • Al aceptar te muestra la lista de paquetes elegidos, en algunos tienes que aceptar unas condiciones, así que marcar "Accept all" y acepta, empezará a descargar muchos ficheros, vete a tomar un café, serán unos 30 minutos o más (según cuantos paquetes marcaste, claro).
  • Cuando termina, en inicio, programas, tienes uno llamado "SDK manager" con el icono de android que te sirve para actualizar o añadir paquetes, pero también sirve para otra cosa: Instalar "virtual devices", es decir, emuladores de diferentes aparatos donde luego probaremos nuestras aplicaciones. Lo tenéis mas sencillo desde eclipse bajo el menú "Windows".

Nota: No, no puedes pasar al punto siguiente sin terminar la descarga, la carpeta workspace contiene información sobre los paquetes que instalas, así que eclipse no puede teenr acceso exclusivo a la carpeta y no te dejará pasar de aquí... y si te dejará, yo no lo haría!


5) Android Development Tool (ADT) Para que eclipse y android SDK trabajen juntos, falta instalar "el pegamento", un plugin de eclipse que internamente llama a los comandos .exe del android SDK sin que lo notemos (si eres un tipo duro, puedes programar sin eclipse llamando a estos comandos por tu cuenta... pero no es muy recomendable).

Lo tienes explicado en la web oficial http://developer.android.com, pero los pasos son simples:

  • Instalar: En eclipse, menú "Help, Install new software", botón "Add" y le pones como nombre "Android ADT plugin" (no es importante el nombre exacto) con la direccion "https://dl-ssl.googl...droid/eclipse/" (si con "https:" no te funciona, quítale la "s" y reintenta), pulsas "OK" (aparece "Pending" por unos segundos), marcas "Development Tools" (también me apareció otro para el NDK por si pretendes programar en C nativo para android) y aceptas todo hasta el final. A mitad saldrá un aviso de que vas a instalar algo sin firma autentificada y esas cosas, aceptas y listo. Cuando termina, eclipse se reinicia.
  • Configurar: Al reiniciar eclipse debería salirte un "Wellcome to android development" desde donde puedes pinchar en "Use existing SDK", pero a mi no me salió nada (quizás por ser la segunda instalación), asi que si no te aparece, ve al menú "Window > Preferences", eliges "Android". En cualquier caso, debes localizar donde instalaste el Android SDK del punto 3 (en mi caso es "C:\AndroidSDK\AndroidSDK"). Pulsas "Apply" (aparecen todos los componentes instalados en el paso 4) y finalmente "OK".

IMPORTANTE: No pueden haber espacios en blanco, si no cambiaste el path al instalar el SDK, lo tendras en uno de estos tres posibles sitios: "Program Files" (cambiarlo por Progra~1), "Program Files (x86)" cambiarlo por "Progra~2" y "Archivos de programa" cambiarlo por "Archiv~1". Si no lo haces, la maquina virtual falla con un mensaje misterioso de "comando Files desconocido".


6) Crear una maquina virtual: Opcional. Para probar las aplicaciones necesitas un android físico o virtual. Aquí puedes crear todos los virtuales que quieras, los físicos, en la tienda!

Si ahora entras a eclipse (si aun ves la ventana de bienvenida, ciérrala), veras arriba dos botones de Android, uno para volver al instalador de paquetes del punto 4 y otro para ver los "Android Virtual Devices" o AVDs. Pulsa este último y si todo quedo bien configurado te aparecerá una ventana "Android SDK and AVD manager" (el .exe lo tienes en la carpeta donde instalaste el SDK por si prefieres abrirlo así).

Pulsas "New", eliges un nombre como "Nesus_S_V4.1" (no admite espacios), versión de android (level 11 = android 2.3.3 en mi caso), tipo de CPU (ARM es lo normal), tamaño de la tarjeta SD (10 MiB en mi caso), memoria RAM (propone 512, lo subí a 1024) activas "Snapshots" (así la segunda vez que entres se cargara muchísimo mas rápido que la primera, que es muy lenta), y el resto lo deje sin modificar.

Puede ser interesante crearse otro con pantalla grande para probar en tablets.

NOTA: Pulsa Start para comprobar que funciona, debería aparecer una ventana inicial y luego otra con un android arrancando, inicialmente tarda un par de minutos hasta que ves el teléfono virtual en pantalla, pero la segunda vez tarda algo menos (en la primera ventana marcas "Use snapshot"). Si en la primera ventana sale un error, leete la nota del punto anterior: dejaste espacios en el path al instalar el SDK.

Si no creamos ninguna máquina virtual, o si la que creamos no es apta para un proyecto (un proyecto para V2.3.3 no puede probarse en un virtual device de la versión 1.6, por ejemplo), al intentar ejecutar nuestro proyecto nos lo avisará y podremos crear una máquina sobre la marcha, así que realmente este paso es opcional y se puede dejar para el último minuto.


7) Instalar el driver usb: Si se quiere depurar en un dispositivo "real", se necesita un driver.

-Es algo largo de explicar y hay variantes, así que mejor leerlo vosotros mismos en la web de google o bien en este post al respecto.

 

Hello World:
Ya esta todo listo, asi que me puse con el "hello world". En la web oficial del Android SDK teneis el tutorial que seguí, es muy sencillo, pero te da una idea de como va la cosa, eso si, tras seguirlo, tendréis que "sumergiros" en otros tutoriales más avanzados (os pongo algunos a continuacion), porque este ·hello world· no explica nada sobre como se programa en Android, solo es seguirlo paso a paso a ver si todo funciona como debe.

Esta es la guía paso a paso: Create a new proyect

Solo un par de notas sobre este tutorial:

Por un lado, cuando te dice que entres a editar el fichero "HelloAndroid.java" del programa en si, el nombre de fichero que ponia el tutorial no era exactamente ("HelloWordActivity.java" en mi caso) pero bueno, solo habia un fichero y no era posible confundirse.

Además, cuando añadais esas 3 lineas al código, vereis dos cosas raras, al menos para mi que no soy de java:

  • Los comentarios si empiezan con /** significa que han de incluir se en la documentacion automatica del código que genera java. Los de delphi tambien valen, tanto /* com */ como //Comentario.
  • Vereis la palabra "TextView" subrayada en rojo: es porque os falta un "import" ("uses" en idioma delphi) en el código: con botón derecho sobre esa palabra aparece un menú, la primera opción que teneis es incluir el fichero que falta automáticamente, en este caso se os añade la línea "import android.widget.TextView;".

En delphi no tenemos estas lindezas!


Tutoriales muy interesantes para inciarse:

1) Es el más completo, y está en español: www.sgoliver.net/blog/?p=1313
2) Esta es la web oficial del desarrollador de Android: http://developer.and...uide/index.html
3) Del estilo del 1, pero en ingles y menos estructurado: www.vogella.de/articles/Android/article.html
4) Desde los comentarios nos apuntan este otro en español y con my buena pinta: http://www.maestrosd...el-hello-world/
5) Otro más en ingles: http://training.orei...om/androidapps/

Y bueno, si se lanzan y tiene alguna duda, o si se instala todo como la seda siguiendo estos pasos, vuelvan a este post y comenten sus experiencias.
  • 0

#2 FGarcia

FGarcia

    Advanced Member

  • Miembro Platino
  • PipPipPip
  • 687 mensajes
  • LocationMéxico

Escrito 26 julio 2011 - 10:41

Pues curioseando también con esto del android encontré este tutorial en español
  • 0

#3 Sergio

Sergio

    Advanced Member

  • Moderadores
  • PipPipPip
  • 1.092 mensajes
  • LocationMurcia, España

Escrito 26 julio 2011 - 01:11

Pues curioseando también con esto del android encontré este tutorial en español


Gracias! Lo añado a la lista (tiene buena pinta).
  • 0

#4 martinartaza

martinartaza

    Advanced Member

  • Miembros
  • PipPipPip
  • 159 mensajes
  • LocationArgentina, Tucuman

Escrito 26 julio 2011 - 07:14

Muchisimas gracias Sergio, por poner tus pasos. Vamos a tratar de seguirlo.
Hoy justo me llego este mail
http://pixelscode.co..._campaign=64653
de una revista que habla de Android.

  • 0

#5 Sergio

Sergio

    Advanced Member

  • Moderadores
  • PipPipPip
  • 1.092 mensajes
  • LocationMurcia, España

Escrito 28 julio 2011 - 01:40

Muchisimas gracias Sergio, por poner tus pasos. Vamos a tratar de seguirlo.
Hoy justo me llego este mail
http://pixelscode.co..._campaign=64653
de una revista que habla de Android.


Vaya, esa revista esta muy bien presentada, casi huele a papel!

El tutorial que trae sobre instalar el SDK, es mas o menos como el resto de tutoriales al respecto, pero se saltan totalmente la instalacion de Jave SE JDK, supongo que porque el que escribe el articulo es "de java de toda la vida" y ni se dio cuenta de que sin ese componente no funciona... aparte de eso, esta muy bien explicado como introduccion al ecosistema android.

Quiero echarle un vistazo al "App Inventor" ese que comenta para hacer jueguecitos para mis niños y trastear un poco. Lo del NDK para programar en C, casi que lo voy a dejar correr de momento.
  • 0

#6 root

root

    Advanced Member

  • Miembro Platino
  • PipPipPip
  • 520 mensajes
  • LocationMexico D.F:

Escrito 07 febrero 2012 - 11:17

ok saludos

les comento

uso ubuntu de 32 bits en un procesador I3

no me dejaba instalar el plugin de eclipse

si a alguien mas le pasa eso solo instalen
ia32-libs
y listo ya te deja instalar el plugin para eclipse

saludos
  • 0

#7 albe123

albe123

    Newbie

  • Miembros
  • Pip
  • 3 mensajes

Escrito 08 febrero 2012 - 11:04

disculpen la molestia, llevo ya hace dias poniedo en todos los foros q tenga alguna relacion con programacion para android y todavia no he sulucionado nada.. my problem is:
soy cubano y me encuentro en cuba claro y google tiene cortado toda la relacion de develoment kit for andriod(sdk y adt) para mi pais, y necesito encontrar alguna forma de hacerlo por cuestiones de trabajo...
ah y para mas no tengo una conexion a full para internet...
comento esto con el objetivo de encontrar una idea de q puedo hacer...
  • 0

#8 root

root

    Advanced Member

  • Miembro Platino
  • PipPipPip
  • 520 mensajes
  • LocationMexico D.F:

Escrito 08 febrero 2012 - 11:07

disculpen la molestia, llevo ya hace dias poniedo en todos los foros q tenga alguna relacion con programacion para android y todavia no he sulucionado nada.. my problem is:
soy cubano y me encuentro en cuba claro y google tiene cortado toda la relacion de develoment kit for andriod(sdk y adt) para mi pais, y necesito encontrar alguna forma de hacerlo por cuestiones de trabajo...
ah y para mas no tengo una conexion a full para internet...
comento esto con el objetivo de encontrar una idea de q puedo hacer...


mmmm

no se pero creo no entendi cual es el problema

quieres descargarte el sdk ?? y el adt ??
o que ??
  • 0

#9 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 13.395 mensajes
  • LocationMéxico

Escrito 08 febrero 2012 - 11:21

Hola albe123, desgraciadamente DelphiAccess no puede proporcionarte desde nuestro sitio la posibilidad de descargar lo que requieres, realmente lo lamento.

You may use our Services only as permitted by law, including applicable export and re-export control laws and regulations.


Saludos cordiales
  • 0

#10 albe123

albe123

    Newbie

  • Miembros
  • Pip
  • 3 mensajes

Escrito 08 febrero 2012 - 12:14

no preocupar yo lo nesecito pero entiendo bien los problemas q hay con todo eso, solo pregunto para si conocen algun sitio q lo tenga por lo menos el adt tengo un sdk pero solo sirve con el adt 9.0.0 y el adt q tengo es el 15  : : :
no es facil esto pero me toco q le voy a hacer... si no fuera tan dificil de encontrar seguro no me darian el trabajo jajaja  (y)
  • 0

#11 Sergio

Sergio

    Advanced Member

  • Moderadores
  • PipPipPip
  • 1.092 mensajes
  • LocationMurcia, España

Escrito 10 febrero 2012 - 05:22

Prueba a bajarte maquinas virtuales completas, asi evitas ese problema:

http://virtualboxima...roidSDAppliance

Igual buscando mas encuentras otras mas actualizadas... como esta:

http://blog.lassey.u...development-vm/

Suerte y vaya mierda de barreras tontoinformaticas, eh?
  • 0

#12 albe123

albe123

    Newbie

  • Miembros
  • Pip
  • 3 mensajes

Escrito 10 febrero 2012 - 09:04

ni me digas nada de restricciones q yo estoy para volverme loco... no puedo entrar a esas paginas q me pones pero muchas gracias...
salu2 el preso  8o| 8o| 8o|
  • 0

#13 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 13.395 mensajes
  • LocationMéxico

Escrito 14 mayo 2012 - 09:31

Hola

Me compré un libro y en su primer capitulo tiene precisamente lo que tenemos en éste hilo, seguí al pie de la letra la explicación, recordé éste hilo y lo he seguido, peroooooooo, algo no estoy haciendo bien porque no sale nada en el emulador  :

:@ 8o| (li)

Cuando llegue a casa comenzaré de cero nuevamente. Todo por querer hacer con java lo que puedo hacer con Pascal  :embarrassed:

Saludos
  • 0

#14 Fenareth

Fenareth

    Advanced Member

  • Administrador
  • 3.475 mensajes
  • LocationMexico City

Escrito 14 mayo 2012 - 09:34

.....

Cuando llegue a casa comenzaré de cero nuevamente. Todo por querer hacer con java lo que puedo hacer con Pascal  :embarrassed:

Saludos


Ándele... por traidor  *-)  :D  :D  :D  :p

Saludox ! :)


  • 0

#15 Delphius

Delphius

    Advanced Member

  • Administrador
  • 5.774 mensajes
  • LocationArgentina

Escrito 07 junio 2012 - 04:22

Hola muchachos,
¿Alguien ha probado otros entornos para el desarrollo de aplicaciones para móviles?
En el seminario que yo estuve se habló de Phonegap. Es un framework HTML5 open source que permite con un único código fuente generar aplicaciones web móviles para diversas plataformas, entre ellas Android (con soporte supuestamente en un 100%).

En el seminario se habló un tanto de la dualidad Aplicación web vs Aplicación Nativa y los pros y contras de cada una. Para el caso particular de Android, ¿Alguno ha probado otras opciones, además de valerse de Eclipse/Java?

Yo estoy por apostar a Android dentro de lo que es el mundo de los móviles, aunque todavía no tomé una decisión sobre mis herramientas, si puro web o nativo o mitad y mitad. Lo que si es seguro es que será bajo plataforma Linuxs (Lubuntu en concreto, al menos por ahora) en donde partiré.

Saludos,
  • 0

#16 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 13.395 mensajes
  • LocationMéxico

Escrito 07 junio 2012 - 05:14

Hola muchachos,
¿Alguien ha probado otros entornos para el desarrollo de aplicaciones para móviles?
En el seminario que yo estuve se habló de Phonegap. Es un framework HTML5 open source que permite con un único código fuente generar aplicaciones web móviles para diversas plataformas, entre ellas Android (con soporte supuestamente en un 100%).

En el seminario se habló un tanto de la dualidad Aplicación web vs Aplicación Nativa y los pros y contras de cada una. Para el caso particular de Android, ¿Alguno ha probado otras opciones, además de valerse de Eclipse/Java?

Yo estoy por apostar a Android dentro de lo que es el mundo de los móviles, aunque todavía no tomé una decisión sobre mis herramientas, si puro web o nativo o mitad y mitad. Lo que si es seguro es que será bajo plataforma Linuxs (Lubuntu en concreto, al menos por ahora) en donde partiré.

Saludos,


Seoane y Javier lo han hecho con Pascal, yo sólo un "Hello World" con PascalGUI :)

Saludos
  • 0

#17 Delphius

Delphius

    Advanced Member

  • Administrador
  • 5.774 mensajes
  • LocationArgentina

Escrito 07 junio 2012 - 05:32

Vaya... amigo, me haces quedar en que soy el único loco que está pensando en tirarse hacia el lado C-style en vez de quedarme en Pascal-style  :D

La verdad es que hay varias maneras y opciones de como entrarle que ya uno se marea. Yo me estoy haciendo de la idea de tener como herramientas de trabajo la cuaterna {Lazarus para aplicaciones de escritorio, PHP sobre el lado web (y quizá algo de PhoneGap), JAVA como extra y para entrar al lado nativo de Android, +Linus +Android como Sistemas Operativos y en Móviles respectivamente}

Y se que con Lazarus se podría ir cubriendo hacia el lado Móvil con Android pero me pregunto si será lo más óptimo, seguro y no estoy totalmente convencido que el soporte sea 100%. Me encanta pensar que con Pascal-style se vaya pudiendo más cosas... pero también siento que debo diversificarme un poco.

La verdad es que no he probado PascalGUI ni otro RIA como para descartarlo.
Haarrggg que con tantas cosas dando vueltas uno ya no sabe como quedarse quieto y decidir.

Saludos,
  • 0

#18 seoane

seoane

    Advanced Member

  • Administrador
  • 1.214 mensajes
  • LocationEspaña

Escrito 08 junio 2012 - 04:41

Seoane y Javier lo han hecho con Pascal, yo sólo un "Hello World" con PascalGUI :)


Pues mi consejo es que si se va empezar desde cero mejor "pasar por el aro" y hacerlo a la manera de google, es decir, con Java. Las aplicaciones así creadas no tienen problemas para ser instaladas, y se integran perfectamente con el teléfono.

Pero eso no quita que podamos divertirnos  :D con Pascal y con C, aunque teniendo presente que las aplicaciones hechas de esta manera no van a poder ser distribuidas, y que lo mas seguro es que se necesite que el teléfono este "rooteado" para hacer la mayoría de las cosas. Como ya dije es divertido jugar con las "tripas" del móvil, pero no lo veo una salida profesional.

Aprovecho para hacer spam  :D :
Mini servidor web en Android (hecho en C): http://delphi.jmrds.com/?q=node/79



  • 0

#19 Delphius

Delphius

    Advanced Member

  • Administrador
  • 5.774 mensajes
  • LocationArgentina

Escrito 08 junio 2012 - 07:52

Pues mi consejo es que si se va empezar desde cero mejor "pasar por el aro" y hacerlo a la manera de google, es decir, con Java. Las aplicaciones así creadas no tienen problemas para ser instaladas, y se integran perfectamente con el teléfono.

Pero eso no quita que podamos divertirnos  :D con Pascal y con C, aunque teniendo presente que las aplicaciones hechas de esta manera no van a poder ser distribuidas, y que lo mas seguro es que se necesite que el teléfono este "rooteado" para hacer la mayoría de las cosas. Como ya dije es divertido jugar con las "tripas" del móvil, pero no lo veo una salida profesional.

Aprovecho para hacer spam  :D :
Mini servidor web en Android (hecho en C): http://delphi.jmrds.com/?q=node/79


Yo como no he probado todavía no se si efectivamente se necesita haber "rooteado" el teléfono. Y de ser así, no me parece algo demasiado lindo ya que una mala operación podría mandar a freir el teléfono.
La verdad es que me da cosa de jugar con un teléfono, aún con el mío... bueno, si tuviera un smartphone android. Y opino igual que tu, si efectivamente se necesita de cosas como esas para que nuestras aplicaciones funcionen y peor si ello no se cargar a Google Play entonces no lo veo como una buena salida profesional.
Entonces así como lo veo, creo que no queda otra que tocar a ese bicho llamado JAVA. Listo entonces, a hacerme muy amigo del pingüino y tratarme la fobia hacia lo que huela C. Como dije el otro día, empezaré a cantar la famosa canción ¡Help!  :D Lo "bueno" es que al menos ya me estoy acostumbrando al clima del polo sur y poder hacerme amigo de esas aves que no vuelan; hace un frío por aquí.  :p

Saludos,
  • 0

#20 Sergio

Sergio

    Advanced Member

  • Moderadores
  • PipPipPip
  • 1.092 mensajes
  • LocationMurcia, España

Escrito 08 junio 2012 - 09:10

Una aplicación android hecha en C puede estar en el market sin ningún problema, de hecho la mayoría de juegos "buenos" están programados en C, el problema no es ese, se puede usar el kit de desarrollo en C de google sin preocuparse de estas cosas.

El mayor problema de no usar java es que, si compilas tu aplicación C, has de elegir una arquitectura concreta, en este caso, lo habitual es compilar para ARM, ya que casi todos los móviles y tablets android usan ese tipo de procesador, pero si luego quieres usar esa app en un aparto con arquitectura x386, como un notebook con android instalado o los futuros tablets con chips de intel, el programa no funcionará.

Aparte de eso, y de que sea más o menos fácil usar C o Java, no hay otros problemas, accedes a las API igual y con los mismos permisos en ambos lenguajes.

Si tu programa C se salta las API y modifica ficheros y esas cosas directamente, entonces solo podrá funcionar en dispositivos rooteados, ya que si no se ejecuta desde un usuario root, el proceso no tendrá acceso al fichero (gracias a usar el kernel de linux por debajo de android).

Aquí la única diferencia es que es más fácil saltarse las API en C que en Java (si es que java lo permite, que no lo sé), pero el resultado es el mismo, el market de google te puede detectar como app maligna y banearte (algo lógico, por otra parte).

Mi consejo de todas formas es usar java por comodidad y porque te aseguras de que todo vaya fino (bueno, dentro de un orden), si optas por C algunas cosas supongo que se te complicarán, como que un form -perdón, una activity- se autoajuste al tamaño y orientación de la pantalla, aunque otras cosas solo las puedas hacer en C y siendo root, como supongo que ocurre con el servidor web de seoane.

Pero si por ejemplo te propones hacer algo en 3D usando OpenGL, tipo juego o realidad virtual, o que precise de cálculos complejos que tarden mucho, tipo ejecutar filtros sofisticados sobre fotografías o detectar caras con la cámara del teléfono, o una simulación física en tiempo real... para todas esas cosas quizás sea mejor tirar por C desde el principio, porque lo que aprendas de java para android no te va a servir de mucho para esto, no tiene la suficiente potencia de cálculo.
  • 0