Escolar Documentos
Profissional Documentos
Cultura Documentos
SAN PABLO
LA PAZ - BOLIVIA
APLICACIONES
ANDROID
Estudiantes:
MANUEL IBIETA
RODRIGO URUCHI
GABRIELA VILCHES
Docente:
ING. JOS CAMPERO
Materia:
TELECOMUNICACIONES MOVILES
Fecha de Entrega:
22/04/2016
LA PAZ BOLIVIA
APLICACIONES ANDROID
1. OBJETIVO
Desarrollar una aplicacin en la plataforma de android
2. MARCO TERICO
La plataforma o sistema operativo Android ha sido desarrollada por impulso de la
empresa Google con el propsito de disponer de un telfono mvil que sea capaz de
acceder a sus aplicaciones y funcionalidades de manera ms eficiente. En un principio
estaba orientada solamente al uso de expertos y restringida su operacin y
compatibilidad con otras redes y sistemas.
Sin embargo la gran flexibilidad de la plataforma asociada a la transparencia de la
tecnologa mvil ha hecho que se popularice rpidamente hasta convertirse en el
sistema operativo preferido de la mayora de fabricantes y proveedores de telfonos
mviles.
La aplicacin y el cdigo no han sido declarados como propietarios y por lo tanto
permiten que cualquier usuario bajo este sistema operativo pueda desarrollar sus
propias aplicaciones.
Actualmente existen libreras y repositorios con aplicaciones de uso libre que los
desarrolladores han compartido con el resto. Sin embargo programas ms sofisticados o
de mayor demanda son comercializados y estn protegidos por licencias. Al momento
existen varias versiones de este sistema operativo que ha ido evolucionando segn la
demanda.
2.1. CARACTERSTICAS ANDROID
Las principales caractersticas de Android son:
Framework de aplicaciones
Permite el reemplazo y la reutilizacin de los componentes.
Navegador integrado
Basado en el motor open Source Webkit.
SQlite
Base de datos para almacenamiento estructurado que se integra directamente
con las aplicaciones.
Multimedia
Soporte para medios con formatos comunes de audio, video e imgenes planas
(MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF).
Mquina virtual Dalvik
Base de llamadas de instancias muy similar a Java.
Telefona GSM
Dependiente del terminal.
Bluetooth, EDGE, 3g y Wifi
Dependiente del terminal.
Cmara, GPS, brjula y acelermetro
Dependiente del terminal
Pantalla Tctil.
iOS es el software de Apple y solo funciona como Apple desea. Por otro lado, Android
permite cambiar incluso la aplicacin que se utiliza para enviar mensaje de texto, aadir
widgets a la pantalla de inicio e incluso usar otros launchers si asi se desea.
Por otra parte mientras que las aplicaciones de google funcionan en iOS, no hay forma
de usar las aplicaciones de Apple en Android.
Entre otras caractersticas:
Interfaz y notificaciones
iOS 8 cuenta con lneas planas, limpias y minimalistas mientras que Android 5.0
presenta diseos coloridos de material design en la que google quiere unificar la
experiencia entre todas las aplicaciones.
El sistema de Apple permite configurar las notificaciones de forma individual
para cada aplicacin mientras que google facilita mucho mas para responder o
eliminar alertas directamente desde el centro de notificaciones.
El botn de volver que es un botn obligatorio en la plataforma Android y un
botn irrelevante y confuso para los usuarios de iOS.
Por otra parte, siri de iOS busca controlar cosas con la voz, usar el telfono sin
mover las manos ni solicitar informacin con la voz. Google now, en cambio,
tambin permite acceder a algunas funciones con la voz, pero su enfoque
principal es de brindar informacin que uno cree buscar.
Aplicaciones y ecosistema
Touch ID ha sido algo muy bueno para iOS, dado que ha mejorado mucho la
experiencia de desbloquear el telfono. Solo Samsung ha incluido tecnologa
para captar huellas dactilares en dispositivos Android de buena calidad.
En cuanto a la seguridad de las aplicaciones tambin es otro punto en el que
Android no es tan seguro como iOS, y que es mas fcil que se pueda acceder a
software no autorizado en los dispositivos.
En cuanto a estabilidad y rendimiento, tanto Android como iOS funcionan
bastante bien y sin problemas en los dispositivos mas recientes, mientras que
los mas antiguos son mas susceptibles a pequeos fallos y cuelgues molestos
de aplicaciones.
En general, iOS es mejor en cuanto a seguridad pero por un margen bastante
pequeo.
2.3. REQUERIMIENTOS MNIMOS DEL SISTEMA
Originalmente los requisitos fueron:
Un procesador de 200 MHz
Memoria RAM de 32 MB
Almacenamiento de 32 MB
Procesador: ARMv5 o superior
2.4. VERSIONES DE ANDROID
La lista de versiones de Android se muestra a continuacin:
VERSION
1.0
1.1
1.5
1.6
2.0
2.0.1
2.1
2.2
2.2.1
2.2.2
2.2.3
2.3
2.3.3
2.3.4
2.3.5
2.3.6
2.3.7
3.0
3.1
NOMBRE
Apple Pie
Banana Bread
Cupcake
Donut
clair
Froyo
Gingerbread
Honeycomb
FECHA DE LANZAMIENTO
23 de Septiembre de 2008
9 de febrero de 2009
30 de abril de 2009
15 de septiembre de 2009
26 de octubre de 2009
3 de diciembre de 2009
12 de enero de 2010
20 de mayo de 2010
18 de enero de 2011
22 de enero de 2011
21 de noviembre de 2011
6 de diciembre de 2010
9 de febrero de 2011
28 de abril de 2011
25 de julio de 2011
2 de septiembre de 2011
21 de septiembre de 2011
22 de febrero de 2011
10 de mayo de 2011
3.2
3.2.1
3.2.2
3.2.3
3.2.4
4.0.0
4.0.2
Ice Cream
Sandwich
4.0.3
4.0.4
4.1
Jelly Bean
4.2
Gummy Bear
4.3 Jelly Bean (Michel)
4.4
4.4.1
4.4.2
KitKat
4.4.3
4.4.4
5.0
5.0.1
5.0.2
Lollipop
5.1
5.1.1
6.0
Marshmallow
15 de julio de 2011
20 de septiembre de 2011
30 de agosto de 2011
1 de diciembre de 2012
28 de febrero de 2012
12 de octubre de 2011
29 de noviembre de 2011
16 de diciembre de 2011
08 de noviembre de 2012
30 de junio 2012
29 de octubre de 2012
24 de julio de 2013
31 de octubre de 2013
5 de diciembre de 2013
9 de diciembre de 2013
2 de junio de 2014
19 de junio de 2014
3 de noviembre de 2014
2 de diciembre de 2014
19 de diciembre de 2014
9 de marzo de 2015
19 de abril de 2015
5 de octubre de 2015
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
10
11
o
o
o
o
o
o
o
o
12
13
o
o
o
o
o
14
o
o
o
o
o
o
o
o
o
o
o
15
16
17
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
18
19
o
o
o
o
o
o
3. DESARROLLO
3.1. EXPLICACION DE LA APK
Bsicamente lo que la aplicacin desarrollada realiza es:
o Selecciona una imagen de la memoria del telfono celular
o Se conecta con el servidor de alojamiento dropbox y sube la imagen
para realizar la interaccin con internet
o Finalmente tiene la posibilidad de establecer la imagen como fondo
de pantalla
3.2. SDK UTILIZADO
El software utilizado para la realizacin de esta apk es Android Studio 2.0
3.3. CDIGO UTILIZADO
El cdigo utilizado para el desarrollo de la aplicacin se muestra a continuacin:
En el cdigo utilizado se utiliz opciones de dropbox que vienen con la api que esta
nos otorga. La cual nos genera dos keys de suma importancia, las cuales nos ofrece
la conexin con una determinada carpeta de dropbox. En este caso la cuenta usada
es de manuimagenes.
package com.example.manuel.dropmanager;
import
import
import
import
import
import
import
import
import
import
import
import
import
android.app.Activity;
android.app.WallpaperManager;
android.content.Intent;
android.graphics.Bitmap;
android.graphics.drawable.BitmapDrawable;
android.net.Uri;
android.os.AsyncTask;
android.support.v7.app.AppCompatActivity;
android.os.Bundle;
android.util.Log;
android.view.View;
android.widget.Button;
android.widget.Toast;
import
import
import
import
com.dropbox.client2.DropboxAPI;
com.dropbox.client2.android.AndroidAuthSession;
com.dropbox.client2.exception.DropboxException;
com.dropbox.client2.session.AppKeyPair;
20
import com.loopj.android.image.SmartImageView;
import
import
import
import
import
java.io.File;
java.io.FileInputStream;
java.io.FileNotFoundException;
java.io.IOException;
java.net.URISyntaxException;
BotonC;
BotonA;
BotonD;
BotonS;
myImage;
//selector de archivos
private static final int FILE_SELECT_CODE = 0;
public String path;
//dropbox
final static private String APP_KEY = "g1dirhb57eoaon9";
final static private String APP_SECRET = "04lf06pvr5206zq";
private DropboxAPI<AndroidAuthSession> mDBApi;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//declaramos los datos que utilizaremos para que pueda tener acceso
el mainactivity a ellos
myImage = (SmartImageView) this.findViewById(R.id.my_image);
BotonA = (Button) findViewById(R.id.button);
BotonC = (Button) findViewById(R.id.button2);
BotonD = (Button) findViewById(R.id.button3);
BotonS = (Button) findViewById(R.id.button4);
//Obtenemos la imagen de parte de una url de internet
myImage.setImageUrl("http://cdn3.computerhoy.com/sites/computerhoy.com/file
s/styles/fullcontent/public/wallpaper_fullhd-2.jpg?itok=noIuyBZ4");
//establecemos la sesion con dropbox mediante las keys generadas
AppKeyPair appKeys = new AppKeyPair(APP_KEY, APP_SECRET);
AndroidAuthSession session = new AndroidAuthSession(appKeys);
mDBApi = new DropboxAPI<AndroidAuthSession>(session);
mDBApi.getSession().startOAuth2Authentication(MainActivity.this);
//establecemos la funcion de establecer la imagen de internet como
wallpaper del celular
BotonA.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
21
22
Toast.LENGTH_SHORT).show();
}
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent
data) {
switch (requestCode) {
case FILE_SELECT_CODE:
if (resultCode == RESULT_OK) {
// mediante la uri de la imagen seleccionada convierte
a string para cargar a dropbox
Uri uri = data.getData();
Log.d("Probandooo ", "File Uri: " + uri.toString());
//es una prueba para conseguir la conversion
// Get the path
try {
path = FileUtils.getPath(this, uri);
} catch (URISyntaxException e) {
e.printStackTrace();
}
Log.d("Esooooo ", "File Path: " + path);
// el archivo ha sido transformado correctamente a el
archivo PATH
// AQUI LA SUBIDA DE DROPBOX
new SubirDropbox().execute();
}
break;
}
super.onActivityResult(requestCode, resultCode, data);
}
// Necesitamos el OnResume debido a que sino saldriamos de dropbox y
nos tendriamos que volver a autenticar
@Override
protected void onResume() {
super.onResume();
if (mDBApi.getSession().authenticationSuccessful()) {
try {
// Required to complete auth, sets the access token on the
session
mDBApi.getSession().finishAuthentication();
String
accessToken
mDBApi.getSession().getOAuth2AccessToken();
} catch (IllegalStateException e) {
Log.i("DbAuthLog", "Error authenticating", e);
}
}
23
}
// esta parte es para la descarga de los archivos desde dropbox
// Esto es para subir el archivo seleccionado a Dropbox pero en Background
class SubirDropbox extends AsyncTask<String, Void, String> {
private Exception exception;
//funcion para el background
protected String doInBackground(String... urls) {
try {
// para cargar el archivo PATH que escogimos anteriormente
File file = new File(path);
FileInputStream inputStream = null;
try {
inputStream = new FileInputStream(file);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
// ya colocamos el PATH dentro de dropbox con la ayuda de
la api mDBApi
DropboxAPI.Entry response = null;
try {
response = mDBApi.putFile(path, inputStream,
file.length(), null, null);
} catch (DropboxException e) {
e.printStackTrace();
}
// aca conseguimos la url de la imagen que conseguimos
Log.i("DbExampleLog", "el archivo que se cargo es: " +
response.rev);
return response.rev.toString();
} catch (Exception e) {
this.exception = e;
return null;
}
}
protected void onPostExecute() {
// TODO: check this.exception
// TODO: do something with the feed
Toast.makeText(MainActivity.this,
exitosamente", Toast.LENGTH_LONG).show();
"El
Archivo
se
cargo
}
}
}
24
4. CONCLUSIONES Y RECOMENDACIONES
El resultado obtenido es satisfactorio, se logr la interaccin con internet
El desarrollo en Android es muy amplio, nos permite desarrollar aplicaciones con
mucha complejidad
Debido a esta complejidad de las aplicaciones Android, el programa que
realizamos no tiene el despliegue y descarga total de los archivos de dropbox.
Se logro realizar una conexin con dropbox para la carga de cualquier tipo de
imagen dentro del dispositivo.
Se pudo dar permisos del celular para poder establecer como fondo de pantalla.
5. BIBLIOGRAFIA Y WEBGRAFIA
o https://es.wikipedia.org/wiki/Anexo:Historial_de_versiones_de_Android
o https://es.wikipedia.org/wiki/Anexo:Historial_de_versiones_de_Android#/media/File:A
ndroid_historical_version_distribution_-_vector.svg
o http://www.preguntandroid.com/pregunta/1439/cuales-son-las-especificacionesminimas-de-hardware-para-android
25
o
o
o
o
http://isft179soandroid.blogspot.com/p/requerimientos-de-hardware-para.html
http://androidos.readthedocs.org/en/latest/data/detalles_tecnicos/
http://www.configurarequipos.com/doc1107.html
http://culturacion.com/android-principales-caracteristicas-del-sistema-operativo-degoogle/
26