Desarrollo Móvil con
   Android SDK
    Jose Luis Ayerdis Espinoza
      joseayerdis@gmail.com
        http://necronet.info
Todo Online

• Presentaciones en Slideshares
  http://www.slideshare.net/necronet/
• Codigo fuente en github
• Informacion publicada http://necronet.info
Durante el Curso

• Desarrollar Interfaces Visuales
• Fundamentos de Android
• Usar servicios web REST
• Almacenamiento de Datos
• Mejores y Peores practicas
Hoy presentamos


• Introduccion a Aplicaciones
 Moviles
Open Handset Alliance

• Operadores
• Fabricantes Telefonos
• Fabricantes de semiconductores
• Compañias de Software
• Compañias de Comercializacion
http://www.openhandsetalliance.com/
¿Android Móvil?
¿Android Móvil?
¿Android Móvil?




Cool
¿Android Móvil?




Cool
¿Android Móvil?




Cool     Rapidos
¿Android Móvil?




Cool     Rapidos
¿Android Móvil?




Cool     Rapidos     Variados
¿Android?

• Sistema Operativo
• Conjunto de Herramientas de
  desarrollo(SDK)
• Comunidad de Desarrollo
Sabores (mmm)
• Cupcake
• Donut
• Eclair
• Froyo
• Gingerbread
• Honeycomb
• Ice cream Sandwich
Es Java y no es Java

• VM Dalvik (Register based)
• JIT ( desde 2.2 )
• Compila bytecode(.class) y compila a dalvik
  (.dex)
Arquitectura
Arquitectura
Arquitectura
Arquitectura
Arquitectura
¿Donde Vivimos?
¿Donde Vivimos?
Herramientas

• Java SDK 1.5>
• Android SDK
• Eclipse (opcional)
• Android Developement Toolkit (plugin)
Android SDK

• Manager SDK para descargar versiones de
  Android y librerias de terceros.
  Ej. Windows Driver ADB
• Manager AVD Crear dispositivos Virtuales.
• Conjunto de herramientas de conectividad
  Android Debugger Bridge.
Android Development
        Kit
• Plugin de Eclipse que facilita desarrollo
  android.
• Instala el ADT en eclipse
  http://developer.android.com/sdk/eclipse-
  adt.html
Problemas hasta ahora
• ¿No tengo Android Phone?
  Android Virtual Device es tu mejor amigo
• ¿No me gusta Eclipse?
  NbAndroid para Netbean
  IntelliJ IDEA tambien sirve.
• ¿No me gusta Java?
  Opciones como MonoDroid C#, SL4A
  Python quizas te atraigan
Tengo un Android

• Mac OS plug and play
• Windows necesitas Google ADB Driver
• Linux necesitas agregar Vendor Id
  /etc/udev/rules.d/51-android.rules


• http://developer.android.com/guide/
  developing/device.html
Fundamentos Android

• Activity
• Service
• Broadcast Receiver
• Cursor y DatabaseOpenHelper
Activity Ciclo de Vida
Recursos /res/
Recursos /res/

• Drawable
• Layout
• Menu
• Values
• XML
Recursos /res/

• Drawable    • Imagenes
• Layout      • GUI
• Menu        • Menus
• Values      • Constantes
• XML         • Especiales
Activity Hello World

public class HolaMundoActivity extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }
}
XML Android
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<TextView
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="@string/hello"
    />
</LinearLayout>
911 - Android

• http://developer.android.com/index.html
• http://stackoverflow.com
• http://www.anddev.org/
• En Google busca “Desarrollo Android”
• Consultas a joseayerdis@gmail.com

Introduccion android