Your SlideShare is downloading. ×
0
Desarrollo de Aplicaciones
Móviles para Android

Erwin Saavedra

10/05/2013
Agenda
●

Presentación: Las aplicaciones de Android

●

Práctica: Laboratorio del ciclo de vida

●

Presentación: Views Pt...
Aplicaciones de Android
¿Qué es una aplicación?
●

●

●
●

●

“Es un programa (software) cuyo propósito es
realizar una o varias tareas”
En Androi...
Componentes de una Aplicación
●

Activities

●

Services

●

Content Providers

●

Broadcast Receivers
El Manifiesto
●

Todas las aplicaciones de Android deben tener
uno

●

AndroidManifest.xml

●

Se usa para declarar activi...
Activities
●
●

●

●

Provee una GUI
Una aplicación usualmente se compone de
varias actividades
Deben declararse en el man...
Ciclo de vida de una Activity
Secuencia durante la transición
entre varias actividades
●

La actividad B va a entrar en el foreground
–

Activity A
1. o...
Activities en el manifiesto
<manifest ... >
<application ... >
<activity android:name=".ExampleActivity" />
...
</applicat...
Callbacks del ciclo de vida (1/3)
public class ExampleActivity extends Activity {
@Override
public void onCreate(Bundle sa...
Callbacks del ciclo de vida (2/3)
@Override
protected void onResume() {
super.onResume();
// The activity has become visib...
Callbacks del ciclo de vida (3/3)
@Override
protected void onDestroy() {
super.onDestroy();
// The activity is about to be...
Llamar una actividad dentro de otra
●

Intent
–
–

●

●

Intent intent = new Intent(this, Activity2.class);
startActivity(...
Services
●
●

No proveen una GUI
Deben declararse en el manifiesto antes de
usarse

●

Tienen su propio ciclo de vida

●

...
Services en el manifiesto
<manifest ... >
<application ... >
<service android:name=".ExampleService" />
...
</application ...
Tip: Depuración
●

Varios mecanismos, por el momento se sugiere
utilizar
–
–

●

Toast (Durante la etapa de desarrollo)
Lo...
Tip: Depuración
Formulas
●

Toast
–
–

●

import android.widget.Toast;
Toast.makeText(context, “Hola”,
Toast.LENGTH_SHORT)...
Views
Interfaces de usuario
●

●

●

●

Todo el sistema de interface de usuario DEBE de
hacerse según los lineamientos de
Google...
Layouts
●
●

●

Los views se anidan dentro de viewgoups
RelativeLayout y LinearLayout son subclases
de ViewGroup
Se descri...
Layouts
Layouts en xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/andr...
LinearLayout Programatically
Button bHola = new Button(this);
bHola.setId(B_HOLA);
bHola.setText("Hola");
bHola.setOnClick...
Views Básicos
●

TextView
–

●

Button
–

●

http://developer.android.com/reference/android/widget/Button.html

EditText
–...
Información Adicional
Lectura adicional
●

http://developer.android.com/guide/components/fundamentals.html

●

http://developer.android.com/guid...
Links
●

Brand
–

●

Iconography
–

●

http://android-ui-utils.googlecode.com/hg/asset-studio/dist/index.html

Reference
–...
Contacto
Erwin Saavedra
saavedraerwin@gmail.com
Asunto: “Diplomado Android UTS”
Atribuciones
●

Logo UTS
http://commons.wikimedia.org/wiki/File:Logo_UTS.JPG Creative Commons Attribution-Share Alike 2.5 ...
Upcoming SlideShare
Loading in...5
×

Slides1

50

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
50
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Slides1"

  1. 1. Desarrollo de Aplicaciones Móviles para Android Erwin Saavedra 10/05/2013
  2. 2. Agenda ● Presentación: Las aplicaciones de Android ● Práctica: Laboratorio del ciclo de vida ● Presentación: Views Pt. 1 ● Práctica: Laboratorio de Views Pt. 1 ● Presentación: Sistema de layout ● Práctica: Layouts lineales y relativos
  3. 3. Aplicaciones de Android
  4. 4. ¿Qué es una aplicación? ● ● ● ● ● “Es un programa (software) cuyo propósito es realizar una o varias tareas” En Android cada aplicación es un usuario de Linux diferente Los procesos se ejecutan en su propia VM Todas las aplicaciones requieren de un manifiesto Las aplicaciones se distribuyen como un .apk
  5. 5. Componentes de una Aplicación ● Activities ● Services ● Content Providers ● Broadcast Receivers
  6. 6. El Manifiesto ● Todas las aplicaciones de Android deben tener uno ● AndroidManifest.xml ● Se usa para declarar activities, services, etc. ● Se usa para solicitar permisos – ● Ej. <uses-permission android:name="android.permission.INTERNET" /> Se usa para indicar las versiones del SDK soportadas
  7. 7. Activities ● ● ● ● Provee una GUI Una aplicación usualmente se compone de varias actividades Deben declararse en el manifiesto antes de usarse Tienen un ciclo de vida
  8. 8. Ciclo de vida de una Activity
  9. 9. Secuencia durante la transición entre varias actividades ● La actividad B va a entrar en el foreground – Activity A 1. onPause() – Activity B 1. onCreate() 2. onStart() 3. onResume() ● Si la actividad A no necesita dibujarse (totalmente ocluida) – Activity A 1. onStop()
  10. 10. Activities en el manifiesto <manifest ... > <application ... > <activity android:name=".ExampleActivity" /> ... </application ... > ... </manifest >
  11. 11. Callbacks del ciclo de vida (1/3) public class ExampleActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // The activity is being created. } @Override protected void onStart() { super.onStart(); // The activity is about to become visible. }
  12. 12. Callbacks del ciclo de vida (2/3) @Override protected void onResume() { super.onResume(); // The activity has become visible (it is now "resumed"). } @Override protected void onPause() { super.onPause(); // Another activity is taking focus (this activity is about to be "paused"). } @Override protected void onStop() { super.onStop(); // The activity is no longer visible (it is now "stopped") }
  13. 13. Callbacks del ciclo de vida (3/3) @Override protected void onDestroy() { super.onDestroy(); // The activity is about to be destroyed. } }
  14. 14. Llamar una actividad dentro de otra ● Intent – – ● ● Intent intent = new Intent(this, Activity2.class); startActivity(intent); Se pueden pasar valores entre Intents haciendo uso de .putXXX y recibiendolos según el mecanismo asociado a startActivityForResult Las actividades se terminan utilizando finish()
  15. 15. Services ● ● No proveen una GUI Deben declararse en el manifiesto antes de usarse ● Tienen su propio ciclo de vida ● Dos tipos – Started – Bound
  16. 16. Services en el manifiesto <manifest ... > <application ... > <service android:name=".ExampleService" /> ... </application ... > ... </manifest >
  17. 17. Tip: Depuración ● Varios mecanismos, por el momento se sugiere utilizar – – ● Toast (Durante la etapa de desarrollo) Logcat Los toast, junto con las notificaciones, se utilizan para informar al usuario. UTILIZAR APROPIADAMENTE
  18. 18. Tip: Depuración Formulas ● Toast – – ● import android.widget.Toast; Toast.makeText(context, “Hola”, Toast.LENGTH_SHORT).show(); Logcat (Debugging) – import android.util.Log; – Log.d("Source", "Description");
  19. 19. Views
  20. 20. Interfaces de usuario ● ● ● ● Todo el sistema de interface de usuario DEBE de hacerse según los lineamientos de Google/Android Siempre se debe de diseñar teniendo en cuenta diferentes tipos de displays La clase que encapsula toda la funcionalidad es View Para dibujar se hace un llamado a setContentView
  21. 21. Layouts ● ● ● Los views se anidan dentro de viewgoups RelativeLayout y LinearLayout son subclases de ViewGroup Se describen – – ● Archivos xml Programatically Se pueden anidar
  22. 22. Layouts
  23. 23. Layouts en xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <TextView android:id="@+id/text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="I am a TextView" /> <Button android:id="@+id/button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="I am a Button" /> </LinearLayout>
  24. 24. LinearLayout Programatically Button bHola = new Button(this); bHola.setId(B_HOLA); bHola.setText("Hola"); bHola.setOnClickListener(this); LinearLayout layout = new LinearLayout(this); layout.setId(L_LINEAR); layout.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT)); layout.setOrientation(LinearLayout.VERTICAL); layout.setGravity(Gravity.CENTER); layout.addView(bHola); setContentView(layout);
  25. 25. Views Básicos ● TextView – ● Button – ● http://developer.android.com/reference/android/widget/Button.html EditText – ● http://developer.android.com/reference/android/widget/TextView.html http://developer.android.com/reference/android/widget/EditText.html ImageView – http://developer.android.com/reference/android/widget/ImageView.html
  26. 26. Información Adicional
  27. 27. Lectura adicional ● http://developer.android.com/guide/components/fundamentals.html ● http://developer.android.com/guide/components/activities.html ● http://developer.android.com/guide/topics/ui/index.html
  28. 28. Links ● Brand – ● Iconography – ● http://android-ui-utils.googlecode.com/hg/asset-studio/dist/index.html Reference – ● http://developer.android.com/design/style/iconography.html Asset Studio – ● http://developer.android.com/distribute/googleplay/promote/brand.html http://developer.android.com/reference/packages.html SDK – http://developer.android.com/sdk/index.html
  29. 29. Contacto Erwin Saavedra saavedraerwin@gmail.com Asunto: “Diplomado Android UTS”
  30. 30. Atribuciones ● Logo UTS http://commons.wikimedia.org/wiki/File:Logo_UTS.JPG Creative Commons Attribution-Share Alike 2.5 Generic ● Logo Android http://developer.android.com/distribute/googleplay/promote/brand.html Creative Commons Attribution
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×