¿Cómo iniciarse en programación Android?
-
Upload
mario-alberto-rivera-dominguez -
Category
Software
-
view
274 -
download
8
description
Transcript of ¿Cómo iniciarse en programación Android?
1) Fomentar el gusto por la programación Android y móvil2) Señalar la importancia de las aplicaciones móviles en el mundo actual.3) Proporcionar un panorama general del ambiente y competencias necesarias para desarrollar en plataforma Android4) Mostrar un punto de inicio y ruta con el cual puedan iniciarse en el desarrollo móvil
Agenda
•Cadadíamásde1millóndedispositivossonactivadosa
nivelmundial•300partnersdehardware,
software,ycarrier•1.5billionesdedescargasal
mesycontando
•Monetizarenlaformaenquefuncionemejor
¿Por qué Aprender Android?
85,5 % de las consultas a Internet son hechas a través de un móvil
¿Cuanto nos cuesta Desarrollar en Móvil?
•Licencia de desarrollador: $25 US•Dispositivo: Nexus 7 (nuevo libre $315
US)•Ordenador: $580 US (HP gama media)•Total: $920 US
•Licencia de desarrollador: $110.07 US al año•Dispositivo: iPhone 5 (nuevo libre $920.48)•Ordenador: La gama más baja es Mac mini
(nuevo $892.96 US)•Total: $1,923.51 US
¡Requiere 209% más inversión desararrollar iOS!
¿Qué es Android?•SistemaoperativoparamóvilesOpenSourcepersonalizable•Laplataformamóvilmáspopularanivelmundial•BasadoenLinux•DiseñadoparaDispositivosMóvilesconpantallatáctil•SecomponedeappsqueseejecutanenunframeworkJavasobreunaMáquinaVirtualllamadaDalvik
Vista de alto nivel del stack de software Android
AndroidSDK
Runtime
OpenGL,WebKit,Graphics,SQLite,Media,FreeType
Drivers
Herramientas del Desarrollador Android
Android Developer Tools
Podemoshacernosdeestaherramientadevariasformas:
•PaqueteBundlequeincluyeEclipse+ADTplugin+AndroidSDKTools•SiyatenemosunIDEpodemosdescargarADTplugin+AndroidSDKTools•AndroidStudio.BasadoenIntelliJ(Beta)
http://developer.android.com/sdk/index.html
¿Y si no tengo un dispositivo físico ?
•ADTnosproveeconunaherramientaquenospermiteemularcualquierdispositivoycualquierversióndelsistemaoperativo,estaherramientaeselAVDManager(Android Virtual Device).
Habilidades del Desarrollador
¿Qué debo saber para desarrollar en Android?1.Java+Programación Orientada a Objetos+XML2.ReglasdelJuegoAndroid
+ CiclodeVidadelaaplicación+ ManejodeRecursos
3.PatronesdeDiseño(Programación)4.DiseñodeInterfacesGráficas,UX
+ MiAndroidnoesuniphone+ DiseñolimpiosypensarencadapantalladelaappcomounaActividadquesepuederealizar.
5.Deseable:TesteodeAplicaciones
“Saber java no te hace un Programador Android, pero como te ayuda”
¿Cómo estructurar una aplicación Android?: Actividades y Fragmentos1.Androidsebasaenlametáforadeloquehacemosencadapantallaesunaactividad(Activity).
2. Fragmento(Fragment),queesunaporcióndelcomportamientodeunaactividad,dichodeotra,unaporcióndelainterfazgráfica.
No hay método Main
<activity android:name=”.MainActivity” android:label=”@string/app_name”><intent-filter> <action android:name=”android.intent.action.MAIN” /> <category android:name=”android.intent.category.LAUNCHER” /></intent-filter></activity> AndroidManifest.xml
Ciclo de vida de las Aplicaciones Android
Estados de la App:+ Resumed+ Paused+ Stopped
Organización de Recursos
•src: ArchivosfuentesJava•layout:Interfacesgráficas•values:Valores(cadenasdetexto)•menu:Menús(contextualesodelabarradeacción)•drawable:Losdrawablessonarchivosdeimágenes(png,jpg,gif,etc)oanimacionesXML
R
•layout
•values
•menu
•drawable
Todo se maneja por Intenciones
Intent.:Esunobjetodemensajequeseutilizaparasolicitarunaaccióndeotrocomponentedeaplicación:• Iniciar una Actividad• Iniciar un Servicio• Entregar un Broadcast
Intent
Explicito Implicito
InterfazGráficayUX
Resolución
960x1280480x600
720x1280
480x800320x480
320x480
1080x1920
768x1280
480x854
540x960
1136x960
240x320
640x960
xxhdpixhdpi hdpi
ldpi mdpi
Screen Ratio
OlvidensedePixelPerfect
¡Piensen en Relativo!
Diseño de Interfaz•Lostabsvanenlapartesuperior•Nohaybotónde“Atrás”enlaapp,paraesoestáelbotóndelsistema.•LosiconosdelSistemanotienquesercuadrados.•Noserecomiendanspashscreens.•Evitalasopcionesescondidas.•Actionbarpuedetenerinteracción.Usenla!•NavigationDrawer.•Loscoloresyprácticamentetodosepuedepersonalizar.
¿Patrón o Antipatrón?
¿Bien o Mal?
¿Bien o Mal?
¿Bien o Mal?
¿Bien o Mal?
Demo
Conclusiones•Norequieremuchainversión.•Tienesuspropiasreglasdediseño(noclonenAppsdeiOS)•Esimportantesabercomosecomportanlasactividades.•ConvienetenerunabuenabasedeJava.•Esimportantesabermetodologiasybuenasprácticasdedesarrrollo
•¡Android SDK es solo el inicio!
¿Donde puedo aprender más?•www.developer.android.com•Cursos/Diplomados/Talleres•Libros:
+ PROANDROID4+ INTRODUCTIONTOANDROIDAPPLICATIONDEVELOPMENT
•Coursera.org•Comunidades•Youtube•StackOverflow.com
[email protected]://mariouz.com/
desarrolloagileveracruz.wordpress.com
@MariouzAlmriveradominguez1
Gracias,¿Preguntas?