Sie sind auf Seite 1von 34

Curso Android

Amancio Vargas Castillo

Evaluacin
2 Examenes 40% 20% C/u
2 Proyectos 40% 20% C/u
Laboratorios 10%
Exposiciones 10%

Versiones Android

Orden alfabtico
Relacionadas con repostera
Honeycomb: primera vez incluye soporte para table y dispositivos grandes (febrero del 2011)

Fragmentacin en Android

Dolor de cabeza para google

Que es Android
Plataforma de software basada en el ncleo de Linux
Plataforma es de cdigo abierto
Otras empresas pueden descargarlo modificarlo y redistribuirlo.
Las aplicaciones pueden ser cerradas y de pago
Las aplicaciones son distribuidas por el play store de google. Se
distribuye el binario y no el cdigo fuente.
Plataforma para abstaer el hardware y facilitar el desarrollo de
aplicaciones para dispositivos con recursos limitados. Nos
facilita el acceso a los componentes del dispositivo como
cmara, sensores, etc.
Optimizado para dispositivos con menos recursos.

Uso de Android

Android es el sistema mas utilizado para dispositivos mviles


Hay empresas que se dedican a hacer estas estadsticas y en
todas Android es el ganador

Arquitectura del sistema Android

Linux kernel: drivers para acceder directamente al hardware (cmara, wifi, etc)
Libraries: libreras de otros fabricantes. Libreras de android.
Maquina Virtual: Android tienen su propia maquina virtual Dalvick
Framework: nos permite acceder a las libreras y drivers de forma sencilla, abstrayndonos de la
funcionalidad mas compleja
Applications: las aplicaciones que le usuario utiliza.

Linux Kernel
Android esta basado en la Versin 2.6 del Kernel de
Linux.
Android aprovecha la seguridad, gestin de memoria,
gestin de procesos, red y modelo de drivers.

Android Runtime
Incluye libreras que proporcionan la mayora de
funcionalidad de Java
Cada aplicacin se ejecuta en su propio proceso, con su
propia instancia de maquina virtual Dalvik
Un dispositivo puede ejecutar mltiples maquinas
virtuales Dalvik lo que lo hace multitarea.

Dalvik Maquina Virtual


No es una JVM, no ejecuta Java Bytecode.
Ejecuta aplicaciones en formato .dex. Un formato propio
de android.
Prcticamente proporciona el mismo conjunto de
funcionalidad que la maquina virtual de java pero con
una implementacin mucho mas optimizada para
entornos con restricciones de memoria y procesador.

Preparacin del SDK


Entornos
Android Studio
Eclipse

Descargar el Android Studio


http://developer.android.com/sdk/index.html

Descargar el SDK
Instalar los tolos
Instalar la ultima versin.
Instalar algunas versiones mas utilizadas (API 15)
Si queremos compatibilidad con versiones anteriores
Extras: son los que ya estn marcados + el google usb
driver, google play services.

Herramientas de desarrollo
Vamos al directorio donde se encuentra el SDK
Platforms: vemos las plataformas que hemos instalado.
Contiene las clases que llamaremos desde android.
Samples: Contiene una serie de ejemplos
Source: Cdigo fuente del SDK Android.

Aplicacin Hola Mundo


Nombre de la aplicacin comience con mayscula
Package Name: Nombre en el play store.

https://play.google.com/store/apps/details?id=com.playmous
.gemcrafter&hl=es
Localizacin del proyecto:
Versin que ser compatible:
Tema: Holo Dark: mas oscuro
Holo Ligth: mas claro
Holo Ligth with Dark Action Bar (barra superior mas
oscura)

Simulador
Nexus 4
Lollipop x86 (Google API)
Nombre: Emulador

Gradle
Es el sistema de empaquetado que utiliza Android
Studio

Probar aplicaciones en nuestro


telefono

En nuestro telfono, seleccionamos la opcinAjustes >


Aplicacionesy habilitamos la opcin deOrgenes
desconocidos. Esto nos permitir instalar aplicaciones
que no provengan del Android Market, que es el caso de

Conectamos nuestro dispositivo a la PC utilizando USB sin habilitar el


modo de almacenamiento masivo. En lugar de ello nos vamos a la
opcin deAjustes > Aplicaciones > Ajustesy habilitamos la
opcinDepuracin de USB.

Estructura
Ventana de projecto
Dentro de la venta java tenemos el cdigo Fuente
Dentro de la clase vemos metodos que nos permiten
ejercutar la actividad
Dentro de la carpeta res/layaut tenemos el diseo de la
aplicacin
Dentro de values: establecer dimensiones, palabras en
un idioma, estilos.
Android Manifest: configuraciones iniciales.

Contenido
Componentes de una aplicacin
Actividades (Activities): pantallas de la aplicacin
Intents: son acciones (ejemplo llamar otro actividad)
Servicios: igual que Windows
Content Providers: compartir informacin entre
dispositivos (nmeros de telfonos)
Broadcast Receivers: lanza mensajes, ejemplo batera
baja.

Actividades (Activities)
Objetivo principal, interactuar con el usuario
Pasa por una serie de estados (ciclo de vida)
Cada Activity debe declararse en el Android Manifest

Ciclo de vida Activity


OnCreate()
Inicio
onResume()
Vuelve a primer plano
onPause()
Pasa a segundo plano
onDestroy()
Cuando la actividad se
cierra

Spelling
Settings/Inspections/Spelling/Typo

Disear formularios XML


Layout: Espacio de trabajo
RelativeLayout: se acomodan en relacin al padre o otros
elementos.
LinearLayout: cada elemento se alinea seguido del otro
fill_parent: esta en desuso fue sustituido por match_parent
match_parent: se adapta al marco
wrap_parent: se adapta al contenido
Comentar
<!-- -->

Agregar controles
TextView
EditText
Button
RadioGroup
RadioButton

Posiciones relativas
android:layout_above:arriba de...
android:layout_below:debajo de...
android:layout_toLeftOf:a la izquierda de...
android:layout_toRightOf:a la derecha de de...
android:layout_alignLeft:alienado a la izquierda de...
android:layout_alignRight:alienado a la derecha de...
android:layout_alignTop:alineado encima de...

Posiciones Relativas
android:layout_alignBottom:alineado debajo de...
android:layout_alignBaseline:alineado a la base de ...
android:layout_alignParentLeft:alineado a la izquierda del contenedor
android:layout_alignParentRight:alineado a la derecha del contenedor.
android:layout_alignParentTop:alineado a la parte superior del contenedor.
android:layout_alignParentBottom:alineado a la parte inferior del
contenedor
android:layout_centerHorizontal:centrado horizontalmente respecto al
contenedor.
android:layout_centerVertical:centrado verticalmente respecto al
contenedor.
android:layout_centerInParent:centrado respecto al contenedor.

Crear las variables


public class MiPrueba extends Activity {
Button
button1,button2,button3,button4;
TextView lbltitulo;
EditText txtvalor;

Asignar las variables a los controles


protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_mi_prueba);
button1=(Button)findViewById(R.id.button1);
button2=(Button)findViewById(R.id.button2);
button3=(Button)findViewById(R.id.button3);
button4=(Button)findViewById(R.id.button4);
lbltitulo=(TextView)findViewById(R.id.lbltitulo);
txtvalor=(EditText)findViewById(R.id.txtvalor);

Primera Forma del Evento Clic


public void Boton1_Click(View view)
{
txtvalor.setText("Botton1");
}

Segunda Forma del Evento Clic


View.OnClickListener Boton2_Click = new
View.OnClickListener() {
public void onClick(View v) {
txtvalor.setText("Botton2");
}
};
button2.setOnClickListener(Boton2_Click);

Tercera Forma del Evento Clic


public void Boton3_Click()
{
button3.setOnClickListener(
new View.OnClickListener() {
public void onClick(View v) {
txtvalor.setText("Button3");
}
} );

https://
sites.google.com/site/utnpractica/moviles-i
Botones.txt

Das könnte Ihnen auch gefallen