Documentos de Académico
Documentos de Profesional
Documentos de Cultura
SUPERIOR DE PANUCO
Materia:
Programacin de Mviles
Docente:
MSI. Patricia Hernndez Rodrguez
Alumnos(a):
Gerla Flor Antonio Del ngel
Grupo: S701
Fecha:
21 DE NOVIEMBRE DE 2017
Contenido
Introduccin de investigacin ............................................................................................................. 3
Introduccin ........................................................................................................................................ 4
3.2 configuraciones y perfiles. ............................................................................................................ 5
3.4 API s genricos.............................................................................................................................. 8
3.5 API s adicionales: Wireless y Multimedia. .................................................................................... 9
3.6 Estructura de una aplicacin. ..................................................................................................... 10
3.7 Ciclo de vida de una aplicacin. .............................................................................................. 11
3.8 Gestor de aplicaciones. .............................................................................................................. 12
3.9 Compilando y distribuyendo una aplicacin .............................................................................. 15
REFERENCIA....................................................................................................................................... 19
RUBRICA DE INVESTIGACIN
Introduccin de investigacin
Un entorno de Desarrollo en este caso ANDROID ESTUDIO de desarrollo de aplicaciones
ANDROID este nos proporcionara muchas herramientas para el desarrollo de la aplicacin. Para
aprender a desarrollar una aplicacin Android es necesario conocer la Arquitectura de Android.
Adems es una plataforma abierta de software para los dispositivos mviles.
UNIDAD 3. ESTRUCTURA DE UNA APLICACION MOVIL
Introduccin
Android Studio insertar los elementos que necesitemos como un layout de la aplicacin,
para insertar los elementos lo pueden hacer desde la forma grfica o directamente mediante
cdigo XML. Adems nos permite visualizar el contenido en "Design" o "Text" nos permite
visualizar el diseo y la vista de cdigo. La interfaz grfica se ve as.
android.util El paquete bsico de servicios pblicos contiene las clases de bajo nivel, como contenedores
especializados, formateadores de cadenas, y de anlisis XML de servicios pblicos
android.os El paquete de sistema operativo permite el acceso a los servicios bsicos como el paso de
mensajes, la comunicacin entre procesos y funciones de reloj.
android.graphics La API de grficos, es el suministro de las clases de bajo nivel como lienzos de apoyo,
colores y las primitivas de dibujo. Tambin le permite dibujar sobre lienzos.
android.text Las herramientas de procesamiento de texto para mostrarlo y analizarlo.
android.database Proporciona las clases de bajo nivel necesario para la manipulacin de cursores cuando se
trabaja con bases de datos
android.content El contenido de la API se utiliza para admirar el acceso a los datos y a la publicacin,
proporcionando los servicios para hacer frente a los recursos, los proveedores de contenido
y los paquetes
android.view Las vistas son un ncleo de la interfaz de usuario. Todos los elementos de la interfaz se
construyen utilizando una serie de vistas que proporcionan los componentes de interaccin
con el usuario.
android.widge Construido sobre el paquete de Vista, estan las clases widget "aqu est uno que creamos
antes", elementos de la interfaz de usuario para su uso en las aplicaciones. Se incluyen listas,
botones y diseos
com.google.androi API de alto nivel que proporciona acceso a los controles de mapas que usted puede utilizar
d.map en su aplicacin. Incluye el control MapView as como la superposicin y la clase
MapController utilizados para anotar y controlar dichos mapas.
android.app Paquete de alto nivel que proporciona el acceso al modelo de solicitud. Este, incluye la
actividad de servicios y las API que forman la base de todas sus aplicaciones.
Carpeta src: esta carpeta contendr todos los paquetes que pueda contener
nuestra aplicacin y en cada paquete habrn los diferentes archivos JAVA
implementados.
Carpeta gen: esta carpeta contendr los archivos R.java y BuildConfig.java.
Estos ficheros son generados automticamente por Eclipse y tienen una gran
importancia dentro de una aplicacin Android. En el archivo R.java se
establece la relacin entre la interfaz grfica y su correspondiente
implementacin en java a travs de referencias. Ninguno de estos dos
archivos puede ser modificado por el programador.
Carpeta assets: este directorio est vaco por defecto. En l se podr incluir
cualquier tipo de fichero externo para que sea utilizado en cualquier momento
de la aplicacin.
Carpeta res: esta carpeta contiene ocho directorios. Cinco de ellos llamados
drawable, drawablehdpi, drawableldpi, drawablemdpi y drawablexhdpi,
que contendrn las imgenes usadas en nuestra aplicacin. En la carpeta
layout y menu se encuentran los archivos .xml que definen las interfaces
grficas y mens de cada pantalla. Y por ltimo, la carpeta values que
contiene el archivo string.xml, dimens.xml o styles.xml donde se podrn
definir constantes dependiendo de qu fichero se trate.
AndroidManifiest: Este archivo es muy importante e imprescindible en
cualquier aplicacin Android. Est escrito en XML y describe los
componentes de los que constara nuestra aplicacin. Esta descripcin
contiene aspectos como las clases que los implementan, sus requisitos, los
datos que pueden manejar o cuando deben ser ejecutados. Tambin se
definen los permisos que el desarrollador solicita para utilizar en su aplicacin
como puede ser localizacin GPS, acceso a internet o utilizar Bluetooth.
project.properties: contiene configuraciones bsicas como la versin de la
plataforma destino. Se configura automticamente y no debe ser modificado
por el programador.
El primer paso que hay que dar es entrar en el men Ajustes y dentro de seccin
Dispositivo pulsar la opcin Aplicaciones. En un vistazo puedes ver todas las que estn
instaladas en el dispositivo, as como el espacio que ocupan en
la memoria.
2: Ordena por tamao
En la primera pgina, vers todas las aplicaciones que han sido
descargadas. En otras pestaas vers las apps y procesos que estn
en uso y un lista completa de todo lo que hay en tu dispositivo. Si
quieres, tienes en el men la opcin Ordenar por tamao.
3: Informacin
Si hay una aplicacin que has establecido que se abra por defecto con una accin, puedes
eliminarlo desde Borrar valores predeterminados. Slo tienes que desplazarte hacia abajo
una vez que ests dentro de la app hasta que llegues a esta opcin. Puedes utilizarla si, por
ejemplo, pruebas un navegador.
5: Borra la cach
Para compilar y ejecutar tu app, haz clic en Run . Android Studio compila tu app con
Gradle, solicita que selecciones un destino de implementacin (un emulador o un
dispositivo conectado) y, luego, implementa la app en dicho destino. Puedes
personalizar parte de este comportamiento predeterminado (por ejemplo, la
seleccin de un destino de implementacin automtico) cambiando la configuracin
de ejecucin. Si deseas usar Android Emulator para ejecutar tu app, debes preparar
un Android Virtual Device (AVD). Si todava no creaste uno, haz clic en Run y luego
en Create New Emulator, en el dilogo Select Deployment Target. Sigue las
instrucciones del asistente Virtual Device Configuration para definir el tipo de
dispositivo que deseas emular. Para obtener ms informacin, consulta Creacin y
administracin de dispositivos virtuales. Si usas un dispositivo Android fsico, debes
habilitar la depuracin USB en el dispositivo. Para obtener ms informacin,
consulta Ejecutar apps en un dispositivo de hardware.
Cmo configurar tu aplicacin para el lanzamiento Como mnimo, debes quitar las
llamadas de Log y el atributo android: debuggable de tu archivo de manifiesto.
Tambin debes proporcionar valores para los atributos android: versionCode y
android: versionName, que se ubican en el elemento <manifest>. Tambin es
posible que debas configurar varios ajustes para cumplir con los requisitos de
Google Play o adaptar cualquier mtodo que uses para lanzar tu aplicacin. Si
usas los archivos de compilacin de Gradle, puedes emplear el tipo de compilacin
de lanzamiento a fin de configurar tus ajustes de compilacin para la versin
publicada de tu app.
Actualizar los recursos de aplicacin para el lanzamiento. Tienes que estar seguro
de que todos los recursos de aplicacin, como los archivos y grficos multimedia,
se actualizan y se incluyen con tu aplicacin o por etapas en los servidores de
produccin correspondientes.
Es posible que debas realizar varias tareas como parte del proceso de preparacin.
Por ejemplo, debers obtener una clave privada para iniciar sesin en tu aplicacin.
PROGRAMACIN DE MVILES
REFERENCIA
https://emiliosedanogijon.wordpress.com/2014/09/29/elementos-de-una-aplicacion-
android/
http://androidcero.eledevapps.com/2015/01/asociar-componentes-xml-con-
variables.html
http://www.hermosaprogramacion.com/2014/08/android-programar-app-como/
https://www.xatakandroid.com/sistema-operativo/todo-sobre-el-soporte-
multiusuario-de-android-4-2-jelly-bean
http://www.tuprogramacion.com/programacion/estructura-de-una-aplicacion-
android/
PRACTICA1 AGENDA
Codigo xml
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:ignore="UselessParent">
<TextView
android:text="Nombre"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/tvnombre"
android:textSize="24sp"
tools:ignore="HardcodedText" />
<Space
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<TextView
android:text="Telefono"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/tvtelefono"
android:textSize="24sp"
tools:ignore="HardcodedText" />
<Space
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<TextView
android:text="Grupo"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/tvgrupo"
android:textSize="24sp"
tools:ignore="HardcodedText" />
<Space
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<Button
android:text="regresar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/btnregresar"
tools:ignore="HardcodedText" />
</LinearLayout>
</RelativeLayout>
Codigo xml
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:ignore="UselessLeaf,UselessParent"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true">
<TextView
android:text="Agenda"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/textView9"
android:textAlignment="center"
android:textSize="28sp"
tools:ignore="HardcodedText" />
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="94dp"
android:weightSum="1">
<TextView
android:text="@string/nombre"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/textView10"
android:layout_weight="0.00"
android:textSize="27sp" />
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:inputType="textPostalAddress"
android:ems="10"
android:id="@+id/txtnombre"
android:layout_weight="1.45" />
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="100dp"
android:weightSum="1">
<TextView
android:text="Telefono"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/textView11"
android:textSize="27sp"
tools:ignore="HardcodedText" />
<EditText
android:layout_width="257dp"
android:layout_height="wrap_content"
android:inputType="numberDecimal"
android:ems="10"
android:id="@+id/txttelefono"
/>
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="122dp"
android:id="@+id/txtgrupo">
<TextView
android:text="Grupo"
android:layout_width="170dp"
android:layout_height="wrap_content"
android:id="@+id/grup"
android:textSize="27sp"
tools:ignore="HardcodedText" />
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="119dp">
<CheckBox
android:text="Amigos"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/btnamigos"
android:textSize="27sp"
tools:ignore="HardcodedText"
android:onClick="marcar1" />
<CheckBox
android:text="Familia"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/btnfamilia"
android:textSize="27sp"
tools:ignore="HardcodedText"
android:onClick="marcar2" />
</LinearLayout>
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="72dp">
<Button
android:text="agregar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/btnagregar"
android:layout_weight="0.00"
android:textSize="27sp"
tools:ignore="ButtonStyle,HardcodedText" />
<Button
android:text="cancelar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/btncancelar"
android:layout_weight="0.00"
android:textSize="27sp"
tools:ignore="ButtonStyle,HardcodedText" />
</LinearLayout>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/textView13"
tools:text="Realizado por:Gerla Flor"
android:textSize="27sp" />
</LinearLayout>
</RelativeLayout>
Cdigo java
package com.gerla.flor.agenda;
import android.content.Intent;
import android.os.StrictMode;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
Button regresar;
TextView textnombre,txttelefono,textamigos;
String n,t,g,p;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_confimacion);
n = getIntent().getStringExtra("nom");
t = getIntent().getStringExtra("tel");
g = getIntent().getStringExtra("amigos");
p = getIntent().getStringExtra("familia");
txttelefono.setText("telefono:" + t);
textamigos.setText("grupo:" + g + ' ' + p);
}
Codigo java
package com.gerla.flor.agenda;
import android.content.Context;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.Toast;
EditText nombre,telefono;
CheckBox grupo1,grupo2;
Button agregar,cancelar;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
nombre=(EditText)findViewById(R.id.txtnombre);
telefono=(EditText)findViewById(R.id.txttelefono);
grupo1=(CheckBox)findViewById(R.id.btnamigos);
grupo2=(CheckBox)findViewById(R.id.btnfamilia);
agregar=(Button)findViewById(R.id.btnagregar);
cancelar=(Button)findViewById(R.id.btncancelar);
String nom,tel,amigos,familia;
nom=nombre.getText().toString();
tel=telefono.getText().toString();
if(grupo1.isChecked()){
amigos= grupo1.getText().toString();
}else{
amigos="";
}
if (grupo2.isChecked()){
familia = grupo2.getText().toString();
}else {
familia="";
}
intent.putExtra(Confimacion.datoE1,nom);
intent.putExtra(Confimacion.datoE2,tel);
intent.putExtra(Confimacion.datoE3,amigos);
intent.putExtra(Confimacion.datoE4,familia);
startActivity(intent);
finish();
}
});
cancelar.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
nombre.setText("");
telefono.setText("");
grupo1.setChecked(false);
grupo2.setChecked(false);
}
});
}
Toast toast=Toast.makeText(context,mensaje,duracion);
toast.show();
}
public void marcar1(View view)
{
if(grupo2.isChecked())
grupo2.setChecked(false);
}
public void marcar2(View view)
{
if (grupo1.isChecked())
grupo1.setChecked(false);
}
}
Practica splash
Cdigo xml
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:weightSum="1"
tools:ignore="UselessParent">
<TextView
android:text="FORMULARIO DE FISICA"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/textView"
android:textSize="24sp"
android:textColor="@color/colorAccent"
android:textStyle="normal|bold"
android:textAlignment="center"
tools:ignore="HardcodedText" />
</LinearLayout>
</RelativeLayout>
Cdigo xml
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
app:srcCompat="@drawable/images"
android:id="@+id/imageView4"
android:layout_centerVertical="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
tools:ignore="ContentDescription" />
</RelativeLayout>
Cdigo java
package com.gerla.flor.formulario1;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.support.v7.app.AppCompatActivity;
/**
* Created by flor on 23/10/2017.
*/
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.splash_activity);
intent_pantallaprincipal.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent_pantallaprincipal.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent_pantallaprincipal);
finish();
}
}, DURACION_SPLASH);
}
Cdigo java
package com.gerla.flor.formulario1;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.support.v7.app.AppCompatActivity;
/**
* Created by flor on 23/10/2017.
*/
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.splash_activity);
intent_pantallaprincipal.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent_pantallaprincipal.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent_pantallaprincipal);
finish();
}
}, DURACION_SPLASH);
}
PRACTICA NOTAS
CDIGO XML
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.gerla.flor.notas.MainActivity">
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
android:layout_marginRight="10dp"
android:layout_marginEnd="10dp"
android:weightSum="1"
tools:ignore="UselessParent">
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textPostalAddress"
android:ems="10"
android:id="@+id/txtnombre"
android:text="Nombre"
tools:ignore="HardcodedText" />
<EditText
android:layout_width="match_parent"
android:layout_height="0dp"
android:inputType="textPostalAddress"
android:ems="10"
android:id="@+id/txtnota"
android:layout_weight="0.35" />
<Button
android:text="Nuevo"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/btnnuevo"
android:onClick="nuevo" />
<Button
android:text="@string/guardar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/btnguardar"
android:onClick="guardar" />
<Button
android:text="Recuperar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/btnrecuperar"
android:onClick="recuperar" />
<Button
android:text="Ajustes"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/btnajustes"
android:onClick="ajustes" />
</LinearLayout>
</RelativeLayout>
CDIGO JAVA
package com.gerla.flor.notas;
import android.content.Context;
import android.content.SharedPreferences;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
nombre=(EditText) findViewById(R.id.txtnombre);
notas=(EditText) findViewById(R.id.txtnota);
}
public void guardar(View v) {
String varnombre=nombre.getText().toString();
String varnota=notas.getText().toString();
SharedPreferences preferencias = getSharedPreferences("notas",
Context.MODE_PRIVATE);
if(d.length() == 0)
{
Toast.makeText(this, "no existe esta nota",
Toast.LENGTH_LONG).show();
notas.setText("");
}
else
{
notas.setText(d);
}
}
public void nuevo(View v)
{
nombre.setText("");
notas.setText("");
}