8/3/2019 Programar Android Sobre Linux
1/17
Inicio Mis Comunidades Directorio Historial
Comunidades Internet y Tecnologa Comunidad GNU/Linux [Tutorial] Desarrollando Aplicaciones para Android en Linux
MS DE 8 MESES 000
Anuncios Google
Curso online Androidwww.estudiosabiertos.es- Aprende a desarrollar y programar tus aplicaciones. Infrmate aqu!
[Tutorial] Desarrollando Aplicaciones paraAndroid en Linux
Android: qu es?
Android es un sistema operativo inicialmente desarrollado por Android Inc., una firma comprada por Google en el 2005.6
Android est basado en una versin modificada del Kernel de Linux.
Tiene una gran comunidad de desarrolladores escribiendo aplicaciones para extender la funcionalidad de los dispositivos.
A la fecha, existen cerca de 100.000 aplicaciones disponibles para Android.12 13 Android Market es la tienda de
aplicaciones en lnea administrada por Google, aunque existe la posibilidad de obtener software externamente. Los
programas estn escritos en Java
Estructura de una aplicacin Android
La estructura de una aplicacin Android est definida por la interaccin de distintos componentes, haciendo nfasis en la
"agrupacin debil" de distintas piezas. La aplicacin har uso de las distintas APIs expuestas por Android, de forma que
los componentes encargados de realizar cada tarea puedan ser manipulados o reemplazados sin problemas, asegurando
la mxima flexibilidad. Por ejemplo, una aplicacin puede permitir al usuario elegir fotos mediante el componente "Galera"
o, por ejemplo, reemplazar esa "Galera" por una seleccin de fotos a travs de un servicio online. Los principales
componentes de una aplicacin seran:
Activity
Representa cada una de las principales tareas que el usuario puede llevar a cabo en la aplicacin. Tpica (aunque no
necesariamente) corresponder a una pantalla especfica de la aplicacin y, tambin normalmente, una "activity" ser el
punto de entrada (pantalla inicial) de nuestra aplicacin. Desde ella se invocarn las vistas, especficas o layouts, para la
aplicacin.
IntentReceiver
Permite a nuestra aplicacin declarar ciertos "callbacks" que respondern a cambios en el estado del terminal. P.ej.
llamada o email recibido, cambio en la geolocalizacin, etc.
Service
Una tarea que corre en el background y que puede y debe ejecutarse sin interaccin con el usuario. Una aplicacin puede
mandar los mensajes necesarios a un determinado servicio activo.
ContentProvider
Establece una capa que permite a las distintas aplicaciones compartir datos. Con independencia del almacenamiento local
que utilicen para sus propsitos, las aplicaciones necesitan declarar ContentProviders para poner a disposicin de otros
procesos los datos que consideren necesarios.
Denunciar - Historial
IdentificarmeIdentificarme Buscar...
Posts Comunidades TOPs Global
6,600
Miembros10,911
Temas1,238
Seguidores
Comunidad GNU/LinuxSi tienes dudas o problemas, o prefieres pasar el tiempo, ste es tu lugar. Un lugar donde todos
compartimos algo en comn: GNU/Linux. "Somos ms linuxeros que Torvalds y ms barbudos que
Stallman".
Ver ms
UnirseUnirse SeguirSeguir
Me gusta
Posteador
8Seguidores
273Puntos
22Temas
Ver ms del autor
facuumunoz
SeguirSeguir
ltimas respuestas
[Off-Topic] Happy birthday linux
[Problema] con videos HD 720p
[Consulta] Quiero introducirme en este
[Consulta] Quiero introducirme en este
[Consulta] Quiero introducirme en este
[Consulta] Quiero introducirme en este
[Consulta] Quiero introducirme en este
[Problema] no puedo instalar ubuntu
[Consulta] Si pongo Ubuntu saco
[Consulta] Si pongo Ubuntu saco
[Consulta] Quiero introducirme en este
[Consulta] Quiero introducirme en este
[Consulta] Quiero introducirme en este
[Consulta] Quiero introducirme en este
[Off-Topic] Compartir con google reader
Tutorial] Desarrollando Aplicaciones para Androi... http://www.taringa.net/comunidades/ubuntupar
de 17 24/08/11 02
8/3/2019 Programar Android Sobre Linux
2/17
Estos son algunos de las principales, pero no las nicas piezas de construccin de la aplicacin. Tambin es interesante
que se defina como pieza de primer nivel, el sistema de notificaciones en pantalla, que se recomienda como principal va
de comunicacin con el usuario.
La construccin de una comunidad
Aunque algunos de las primeros ataques que sufri Android tras su presentacin fue la de ser slamente "vaporware", o
una mera "nota de prensa", no tardaron demasiado en aparecer los primeros productos tangibles de la iniciativa: slo siete
das despus del anuncio oficial, Google liber una versin preliminar de su SDK, consistente en ejemplos de cdigo,
documentacin, un emulador de dispositivos con Android, diversas herramientas de debug y un plugin de desarrollo para
Eclipse.
Al mismo tiempo que lanzaba el SDK, Google impulsaba una importante tarea de construccin de una comunidad
articulada de evangelistas y desarrolladores: blogs, tutoriales, videos en Youtube que cumplen funciones tanto de creacin
de marca como pedaggicas. Como gran incentivo para aumentar la masa crtica de desarrolladores necesaria para hacer
frente a comunidades ms antiguas y numerosas, se cre la Android Developers Challenge que, desde principios de 2008,
recompensar con 10 millones de dlares a los mejores proyectos para la plataforma, asegurndose as un poblado
ecosistema de aplicaciones disponibles incluso antes de la aparicin de los primeros dispositivos capaces de ejecutarlas.
Requisitos
dijo:
-Android est hecho en Java+XML, por lo tanto saber se debe saber sobre ambos
-Java JDK-SDK
-El mejor IDE para programar para Android es Eclipse (multiplataforma)
-plugin de Android para Eclipse (ADT).
Instalando Java JDK
Como Android est basado en Java, necesitamos tener instalado el Kit de desarrollo de java en la pc. Para ello descargue
la ltima versin del JDK (versin adecuada a las caractersticas de su sistema operativo).
Descargar desde el sitio de Oracle
Usuario de ubuntu :
dijo:
sudo aptitude install sun-java6-bin
adems, si tu mquina es de 64 bits vas a necesitar las libreras de 32 bits ya que el SDK de Android est programado en
32 bits:
dijo:
sudo aptitude install ia32-libs
Usuario de arch:
dijo:
sudo yaourt -S jdk
Instalando SDK
Si sos usuario de arch yaourt -S android-sdk y listo
en ubuntu:
Descargar Bajamos la versin para linux y descomprimimos.
supongamos que nos quedo asi.. " /home/{usuario}/Desarrollo/android-sdk-linux_86"
Preparar Android SDK para la instalacin
Antes de poder instalar nada tenemos que declarar el path para que el sistema encuentre los ejecutables. Para ello hay
que editar el fichero .bashrc alojado en tu directorio home:
Tutorial] Desarrollando Aplicaciones para Androi... http://www.taringa.net/comunidades/ubuntupar
2 de 17 24/08/11 02
8/3/2019 Programar Android Sobre Linux
3/17
dijo:
$ gedit ~/.bashrc
y agregar al final:
dijo:
export PATH=${PATH}:/home/{usuario}/Desarrollo/android-sdk-linux_86/tools
Reemplazando {usuario} por tu nombre de usuario
luego podremos lanzarlo desde la terminal tecleando
dijo:
android
Esto har que se abra el manager de Android donde podremos instalar y actualizar el SDK as como crear dispositivos
virtuales de pruebas, vamos a Available Packages y pulsamos Refresh para que nos aparezca la lista de paquetes que
podemos instalar. Es importante que NO est seleccionada la casilla Display update only ya que esta primera vez
queremos instalarlo todo. Seleccionamos todos los paquetes y pulsamos Install Selected.
Entonces se abrir una nueva ventana para aceptar las licencias de dichos paquetes. Seleccionamos Accept All y
pulsamos Install Acepted.
Tutorial] Desarrollando Aplicaciones para Androi... http://www.taringa.net/comunidades/ubuntupar
3 de 17 24/08/11 02
8/3/2019 Programar Android Sobre Linux
4/17
Instalar Eclipse
ubuntu :
dijo:
sudo apt-get install eclipse
arch :
dijo:
sudo yaourt -S eclipse
Instalamos el ADT
Descargamos dentro de eclipse:
Help > Install New Software > Add
Seleccionamos Archive agregamos lo descargado y seguimos > Next > Next > Finish > Reiniciar Eclipse
Tutorial] Desarrollando Aplicaciones para Androi... http://www.taringa.net/comunidades/ubuntupar
4 de 17 24/08/11 02
8/3/2019 Programar Android Sobre Linux
5/17
Luego Windows -> Preferences > Android
y en SDK Location completamos con
dijo:
/home/{usuario}/Desarrollo/android-sdk-linux_86
ahora nos dirigimos a el sdk:
Tutorial] Desarrollando Aplicaciones para Androi... http://www.taringa.net/comunidades/ubuntupar
5 de 17 24/08/11 02
8/3/2019 Programar Android Sobre Linux
6/17
en el presionamos "New"
podemos "encenderlo"(Tarda un buen rato en arrancar).
Tutorial] Desarrollando Aplicaciones para Androi... http://www.taringa.net/comunidades/ubuntupar
6 de 17 24/08/11 02
8/3/2019 Programar Android Sobre Linux
7/17
Creando un nuevo proyectoLa mejor forma de conocer un sistema es probndolo asi que vamos a crear el proyecto y por el camino vamos explicando
cmo funciona Android.
File -> New -> Other -> Android -> Android Project
completemos como de esta manera:
Project name: HolaMundo
Package name: com.example.holamundo
Create Activity: HolaMundo
Application name: Hola Mundo
Tutorial] Desarrollando Aplicaciones para Androi... http://www.taringa.net/comunidades/ubuntupar
7 de 17 24/08/11 02
8/3/2019 Programar Android Sobre Linux
8/17
Aunque he puesto los mismos nombres en los 4 sitios no tiene por qu coincidir, como sabris. El nombre de la aplicacin
es lo que veris en el mvil, las actividades son los controladores de Android, el nombre del paquete es algo interno y el
proyecto es lo que veris en Eclipse. Finalizamos y podremos ver el siguiente rbol de archivos
la estructura:
dijo:
/src Aqu se encuentran las actividades (controladores recuerdo), clases y un archivo que se llama R.java.
Este archivo no se debe tocar nunca, Android lo actualiza automticamente pero si lo veis os encontraris
con variables y posiciones.
/Android Library Eclipse referencia al sdk de Android. No movis nunca el sdk de sitio o si lo hacis
recordad cambiar la direccin
/assets Aqu se puede incluir archivos varios (msica, pdfs, zips, rars)
/res/drawable Todas las imgenes van en este directorio
/res/layout Todas las vistas van aqu
/res/values En el archivo strings.xml podemos poner variables que luego sustituiremos en las vistas
AndroidManifest.xml Este archivo es muy importante porque recoge todas las actividades y algunas
configuraciones del proyecto.
Tutorial] Desarrollando Aplicaciones para Androi... http://www.taringa.net/comunidades/ubuntupar
8 de 17 24/08/11 02
8/3/2019 Programar Android Sobre Linux
9/17
Vamos a ejecutar el proyecto, y para eso damos a Run As y elegimos Android Application. Si instalasteis todo bien saldr
el emulador, cargando iniciando Android (tarda un poquito). Lo desbloqueamos dando a Men, y ya puedes ver la
aplicacin ms bsica que se hace en todos los lenguajes, nuestro Hola Mundo.
Creando Una aplicacin un poco mas interesante
Ahora vamos a desarrollar un pequeo conversor de temperatura de Celsius a Fahrenheit y viceversa.
Lo siguiente es una traduccin muy barata del siguiente artculo:
http://www.vogella.de/articles/Android/article.html
En el nombre del proyecto aparece "vogella" para no hacer las capturas de pantalla
nuevamente File -> New -> Other -> Android -> Android Project
Tutorial] Desarrollando Aplicaciones para Androi... http://www.taringa.net/comunidades/ubuntupar
9 de 17 24/08/11 02
8/3/2019 Programar Android Sobre Linux
10/17
Tutorial] Desarrollando Aplicaciones para Androi... http://www.taringa.net/comunidades/ubuntupar
0 de 17 24/08/11 02
8/3/2019 Programar Android Sobre Linux
11/17
una vez creado el proyecto nos dirigimos a string.xml ("res/values/string.xml" )
Presionamos "Add". seleccionamos "Color" en el nombre "myColor" y "#3399CC" de valor.
y agregamos de manera anloga a los siguientes, todos de tipo String:
nombrevalor
buttonHandlermyClickHandlercelsius to Celsius
fahrenheitto Fahrenheit
calcCalculate
nos debera quedar as:
Tutorial] Desarrollando Aplicaciones para Androi... http://www.taringa.net/comunidades/ubuntupar
1 de 17 24/08/11 02
8/3/2019 Programar Android Sobre Linux
12/17
o viendo el cdigo:
dijo:
Hello World, Convert!
Temperature Converter
#3399CC
myClickHandler
to Celsius
to Fahrenheit
Calculate
Vamos a agregar los elementos grficos que nos servirn para la entrada y salida de datos:
Abrimos "res/layout/main.xml" presionamos en Graphical como bien muestra la imagen:
Eliminamos el "Hello Word" con el click derecho.
Agregamos en el diseo de un "EditText" luego "RadioGroup" (Solo sirve para agrupar no es ningun elemento visible) y
luego dos componentes RadioButton y un "botn".
El xml les debe quedar si o si de esta manera:
dijo:
Tutorial] Desarrollando Aplicaciones para Androi... http://www.taringa.net/comunidades/ubuntupar
2 de 17 24/08/11 02
8/3/2019 Programar Android Sobre Linux
13/17
Una vez listo editamos las propiedades de cada elemento,
En el "EditText" cambiamos
Layout Width por fill_parent y en Input Type seleccionamos "numberSigned" y "number decimal"
Tutorial] Desarrollando Aplicaciones para Androi... http://www.taringa.net/comunidades/ubuntupar
3 de 17 24/08/11 02
8/3/2019 Programar Android Sobre Linux
14/17
Colocamos "celsius" en la propidad "text" del primer RadioButton y "Fahrenheit" a la segunda. Tambien ponemos en true
la propiedad "Checked" del primer RadioButton.
Asignar "calc" en la propiedad de "text" del button y asignar a "buttonHandler" "onClick" .
Hacemos click en la ventana y editamos "background" colocando "@color/myColor"
En caso de que no entiendan copien y peguen el codigo en el xml.
El cdigo les debe quedar de esta forma:
dijo:
Ahora abrimos "Convert.java" y copia el siguiente cdigo:
Lo dejo en pastebin para que se vea mejor: LINK
dijo:
package de.vogella.android.temperature;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.RadioButton;
import android.widget.Toast;
public class Convert extends Activity {
private EditText text;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
text = (EditText) findViewById(R.id.EditText01);
}
// This method is called at button click because we assigned the name to the
// "On Click property" of the button
Tutorial] Desarrollando Aplicaciones para Androi... http://www.taringa.net/comunidades/ubuntupar
4 de 17 24/08/11 02
8/3/2019 Programar Android Sobre Linux
15/17
public void myClickHandler(View view) {
switch (view.getId()) {
case R.id.Button01:
RadioButton celsiusButton = (RadioButton) findViewById(R.id.RadioButton01);
RadioButton fahrenheitButton = (RadioButton) findViewById(R.id.RadioButton02);
if (text.getText().length() == 0) {
Toast.makeText(
this,
"Please enter a valid number", Toast.LENGTH_LONG).show();
return;
}
float inputValue = Float.parseFloat(text.getText().toString());
if (celsiusButton.isChecked()) {
text.setText(String
.valueOf(convertFahrenheitToCelcius(inputValue)));
} else {
text.setText(String
.valueOf(convertCelciusToFahrenheit(inputValue)));
}
// Switch to the other button
if (fahrenheitButton.isChecked()) {
fahrenheitButton.setChecked(false);
celsiusButton.setChecked(true);
} else {
fahrenheitButton.setChecked(true);
celsiusButton.setChecked(false);
}
break;
}
}
// Converts to celcius
private float convertFahrenheitToCelcius(float fahrenheit) {
return ((fahrenheit - 32) * 5 / 9);
}
// Converts to fahrenheit
private float convertCelciusToFahrenheit(float celsius) {
return ((celsius * 9) / 5) + 32;
}
}
Ahora ya esta listo!!! vamos al sdk iniciamos "la maquina/celular virtual" que creamos, esperamos que prenda y
Run-As-> Android Application
Tutorial] Desarrollando Aplicaciones para Androi... http://www.taringa.net/comunidades/ubuntupar
5 de 17 24/08/11 02
8/3/2019 Programar Android Sobre Linux
16/17
0
FUENTE1
FUENTE2
FUENTE3
FUENTE4
Me gusta
00
Me gustaMe gusta SeguirSeguir3
CALIFICACIN8
SEGUIDORES955VISITAS
Tutorial] Desarrollando Aplicaciones para Androi... http://www.taringa.net/comunidades/ubuntupar
6 de 17 24/08/11 02
8/3/2019 Programar Android Sobre Linux
17/17
Curso online Android Aprende a desarrollar y programar tus aplicaciones. Infrmate aqu!www.estudiosabiertos.es
Plus500 Software Aces, Forex, Petrleo, Ouro. Conta Demo Gratis. Bnus 25 Gratis www.Plus500.pt
NetBeans RCP Training with Geertjan Wielenga, also as in-house course or via webinarwww.eppleton.de
Tienes que ser miembro para responder en este tema
7 respuestas
@Abi0kdijo ms de 8 meses:
Muy buena info
@facuumunozdijo ms de 8 meses:
Abi0kdijo:
Muy buena info
Gracias ;D
@pipebuntudijo ms de 8 meses:
WOOOOAU GRACIAS POR LA INFO...
@colga1dijo ms de 8 meses:
Excelent.
@seban_dijo ms de 4 meses:
muy bueno
@blackjaguar2000dijo ms de 2 meses:
Excelente, me ayudaste muchisimo amigo.
@matt12stonesdijo ms de 1 mes:
que buena info la necesitaba
Ir al cieloBuscar...
Anunciar Ayuda Protocolo Ideas Reportar bug Contacto Denuncias Report Abuse - DMCA Trminos y condiciones Privacidad de datos
Desactivar la beta
Tutorial] Desarrollando Aplicaciones para Androi... http://www.taringa.net/comunidades/ubuntupar
7 de 17 24/08/11 02
Top Related