Instalación de Eclipse Luna y Android SDK en GNU/Linux
Tiempo total: 2 días con 14:14:11 hrs
Esta publicación muestra la información necesaria para instalar eclipse y configurar Android SDK en GNU/Linux. El sistema operativo utilizado es Ubuntu 12.04 y la razón de esto, es decir la utilización de GNU/Linux y no Windows como es mi costumbre, es porque recientemente me encontré con un problema nuevo en Windows el cual no pude solucionar:
ADB server didn’t ACK * failed to start daemon *
Buscando en Google acerca de este error, todos los blogs y sitios de desarrollo hablan acerca de la utilización del puerto 5037 por parte del programa ADB.exe, el cual se encuentra en el folder de instalación de la SDK llamado /plataform-tools. En resumen, por mi parte llegue al punto en el cual el programa adb.exe utilizaba el mencionado puerto, no existía ningún otro proceso que lo utilizaba, mi antivirus Avast y mi cortafuegos estaban deshabilitados, ejecutaba tanto Eclipse como adb.exe con permisos de administrador, entraba a la consola CMD mataba el proceso y lo iniciaba de nuevo, con el administrador de tareas realizaba lo mismo – Mataba el árbol de procesos, reiniciaba Eclipse, la maquina y hacia lo mismo: Realice todo lo posible y no funciono.
Mi maquina tiene Windows 7, utilice otra portátil que tenia disponible con Windows 8 (ambas con arquitectura de 64 bits), inclusive intente lo mismo con otra portátil que tenia Windows 7 pero con 32 bits – y nunca funciono. Es por esto que decidí pasarme a Ubuntu, y no utilizar más tiempo tratando de solucionar el problema de la respuesta ACK, así que a continuación los pasos bastante intuitivos sobre la instalación de eclipse Luna, junto a Android SDK y la utilización de un dispositivo móvil para correr las aplicaciones.
1. https://www.eclipse.org/downloads/
En la página de descarga, seleccionamos la versión de 32 bits. Antes de seleccionar el tipo de arquitectura, en mí caso tengo una portátil de 64 bits y por esto descargue dicha versión, pero al momento de iniciar eclipse aparecía el siguiente error:
jose@jose-ubuntu:~/Downloads$ sudo ./eclipse/eclipse
./eclipse/eclipse: 1: ./eclipse/eclipse: Syntax error: “)” unexpected
Mi mala suerte seguía, la solución es averiguar bajo que arquitectura corre nuestro sistema operativo, con el comando uname -a, el resultado deberá ser:
32 bits:
Linux jose-ubuntu 3.11.0-15-generic #25~precise1-Ubuntu SMP Thu Jan 30 17:42:40 UTC 2014 i686 i686 i386 GNU/Linux
64 bits:
Linux discworld 2.6.38-8-generic #42-Ubuntu SMP Mon Apr 11 03:31:50 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux
Una vez reconocido el error, descargamos el paquete correcto (Java Developers):
2. Para que la descarga sea más rápida, seleccionamos el servidor más cercano a nuestra ubicación.
3. La versión de eclipse de esta publicación es Luna. Existen otros paquetes que Android Developers proporciona, son llamados ADT bundle que incluyen lo necesario para desarrollar para dispositivos moviles, te ahorran el proceso de instalación usando Eclipse pero debido a mi mala experiencia en Windows decidí descargar todo paso a paso.
4. Una vez descargado el archivo .tar.gz lo descomprimimos en el folder /opt, luego le asignamos todos los permisos a los archivos del folder eclipse/.
cd Downloads/
sudo tar zxf eclipse-java-luna-R-linux-gtk.tar.gz -C /opt
sudo chmod 777 eclipse/ -R
5. Registramos el programa creando el archivo Eclipse.desktop en la ubicación /usr/share/applications/ con el siguiente código:
[Desktop Entry]
Name=Eclipse
Type=Application
Exec=/opt/eclipse/eclipse
Terminal=false
Icon=/opt/eclipse/icon.xpm
Comment=Integrated Development Environment
NoDisplay=false
Categories=Development;IDE
Name[en]=eclipse.desktop
Con esto logramos encontrar el IDE eclipse entre los programas instalados en Ubunto. Ahora instalamos Java JDK, pesa 111MB:
sudo apt-get install openjdk-7-jdk
Para mantener todo en orden, creamos la carpeta workspace adentro del directorio /opt/eclipse, de esta manera todo lo que utilice eclipse estará dentro de esta carpeta.
sudo mkdir workspace
sudo chmod 777 workspace -R
6. En el menú en Eclipse, help, install new software escribimos la siguiente URL:
https://dl.google.com/eclipse/plugin/4.4
Aparecerán todas los plugins y funcionalidades disponibles.
7. El proceso anterior de instalación de nuevo software, ocurrió el error de que no instalo el SDK de Android, esto se comprueba realizando una búsqueda en el directorio raíz con el siguiente comando (Algunas veces los paquetes se instalan en distintas locaciones):
find ~/ -type f -name “sdk”
A diferencia de Windows, al seleccionar todos los plugins disponible para instalar te descarga el SDK – o bien, la razón de este problema en Ubuntu fue algún error en la descarga del software. Para solucionar esto, se descarga el paquete SDK desde Android developers:
http://developer.android.com/sdk/index.html#download
Desde la carpeta Downloads descomprimimos el archivo en el directorio /opt/eclipse:
cd Downloads/
sudo tar zxf android-sdk_r23.0.2-linux.tgz -C /opt/eclipse
sudo chmod 777 eclipse/android-sdk-linux -R
8. Ahora, en Eclipse en el menú Window, Preferences seleccionamos Android y establecemos el directorio de ubicación de la carpeta SDK: /opt/eclipse/android-sdk-linux
9. En el icono de Android SDK Manager – si no está disponible, lo habilitamos en Window, Customize perspective y seleccionamos Android SDK and AVD Manager:
Es necesario descargar la API 2.3.3 o inferior, para poder desarrollar aplicaciones compatibles con los dispositivos móviles que utilizan versiones antiguas de Android. En este caso Google USB Drive no es compatible con Linux, pero se logra reconocer el dispositivo móvil de otra manera, creando un archivo de configuración mostrado en el último paso de esta publicación:
Android 2.3.3 API 10
Google USB Drive
Android support repository
Y las opciones marcadas por defecto.
10. A continuación establecemos la maquina virtual de Android que utilizara nuestro proyecto. En Run -> Run configurations seleccionamos el proyecto de prueba que hemos creado.
Para crear un proyecto Android, damos clic en File -> New project -> Other -> Android
Ahora, en la pestaña de Run -> Run configurations, Target seleccionamos el dispositivo que hemos creado. Si no existe, creamos uno.
11. Al crear un dispositivo móvil, lo hacemos usando la Api 10 para que sea compatible con los dispositivos móviles que usan versiones antiguas de Android.
12. Para que Eclipse reconozca nuestro dispositivo móvil, el primer paso es habilitar esto en nuestro celular, para esto en el menú de configuración, aplicaciones, desarrollo marcamos todas las opciones de desarrollo:
Ahora creamos el archivo de configuración, para Ubuntu el nombre es: 51-android.rules
sudo gedit /etc/udev/rules.d/51-android.rules
sudo chmod a+r /etc/udev/rules.d/51-android.rules
Contenido:
SUBSYSTEM==”usb”, ATTR{idVendor}==”0fce”, MODE=”0666″, GROUP=”plugdev”
El valor 0fce es para dispositivos Sony Erricson, puedes obtener más información en la URL de consulta:
http://developer.android.com/tools/device.html
Al final encontraras una tabla que muestra el idVendor para cada tipo de dispositivo móvil. Para comprobar si Eclipse reconoce nuestro celular, seleccionamos Window, Open perspective, Other, DDMS y observaremos el nombre de la empresa de nuestro celular. Finalmente, en Run, run configurations seleccionamos la pestaña Target, y seleccionamos Launch on all compatible devices, y Active Devices.
Referencias
[http://developer.android.com/sdk/index.html]
[http://www.taringa.net/posts/linux/11056868/Tip-Ask-Ubuntu-Como-saber-si-tengo-arquitectura-32-o-64-bi.html]
[http://developer.android.com/tools/device.html]
[https://www.eclipse.org/downloads/]
[https://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/luna/R/eclipse-jee-luna-R-linux-gtk.tar.gz]
[http://superuser.com/questions/348205/how-do-i-unzip-a-tar-gz-archive-to-a-specific-destination]
[http://www.krizna.com/ubuntu/install-eclipse-in-ubuntu-12-04/]
[https://developers.google.com/eclipse/docs/install-eclipse-4.4]
[https://dl.google.com/eclipse/plugin/4.4]
[http://stackoverflow.com/questions/5776148/have-to-find-a-file-in-ubuntu]
[http://www.eclipse.org/eclipse.org-common/themes/Nova/images/eclipse-800×426.png]