En muchas ocasiones, las aplicaciones instaladas en un terminal Android necesitan compartir información. Android define un mecanismo estándar para que las aplicaciones puedan compartir datos sin necesidad de comprometer la seguridad del sistema de ficheros. Con este mecanismo podremos acceder a datos de otras aplicaciones, como la lista de contactos, o proporcionar datos a otras aplicaciones. Los ContentProvider se estudian en el capítulo 9.
 |
Preguntas de repaso: Componentes de una aplicación |
1.11. Documentación y ApiDemos
Aunque en este libro vas a aprender mucho, resultaría imposible tocar todos los aspectos de Android y con un elevado nivel de profundidad. Por lo tanto, resulta imprescindible que dispongas de fuentes de información para consultar los aspectos que vayas necesitando. En este apartado te proponemos dos alternativas: el acceso a documentación sobre Android y el estudio de ejemplos.
1.11.1. Dónde encontrar documentación
Puedes encontrar una completa documentación del SDK localmente en:
…\adt-bundle-windows-…\sdk\docs\index.html
Se incluye la descripción de todas las clases (Develop > Reference), conceptos clave y otros tipos de recursos. Esta documentación también está disponible en línea a través de Internet:
http://developer.android.com/
Muchos de los recursos utilizados en este libro puedes encontrarlos en:
http://www.androidcurso.com/
Para resolver dudas puntuales sobre programación te recomendamos la siguiente web de preguntas y respuestas:
http://stackoverflow.com/
1.11.2. La aplicación ApiDemos
Otra opción muy interesante para aprender nuevos aspectos de programación consiste en estudiar ejemplos. Con este propósito se ha incluido en el SDK de Android una aplicación, ApiDemos. Está formada por cientos de ejemplos, donde no solo podrás ver las funcionalidades disponibles en la API de Android, sino que además podrás estudiar su código.
Para crear un proyecto con esta aplicación, sigue los siguientes pasos: Selecciona File > New > Project… e indica Android Sample Project. Pulsa Next y aparecerá un cuadro de diálogo similar al siguiente:
Has de seleccionar un nivel de API para crear el proyecto. A continuación selecciona uno de los proyectos de ejemplo: en nuestro caso, ApiDemos. Pulsa Finish para crear el proyecto.
NOTA: solo funcionará si tienes instalados los ejemplos. Puedes verificarlo abriendo Android SDK Manager y asegurándote de que “Samples for SDK” está instalado.
Si no ha habido ningún error, ya puedes ejecutar ApiDemos. Verás cómo los diferentes ejemplos se organizan por carpetas. En el nivel superior tenemos:
Accessibility: aspectos de accesibilidad, como trackball, touch o texto a voz.
Animation: una gran variedad de efectos y animaciones.
App: trabajando a nivel de aplicación con Activity, Alarm, Dialog, Service, etc.
Content: describe cómo leer datos desde ficheros, recursos y archivos XML.
Graphics: una gran cantidad de ejemplos gráficos tanto en 2D como en 3D.
Media: reproducción de audio y vídeo con las clases MediaPlayer y VideoView.
NFC: ejemplos de uso de Near Field Communication.
OS: servicios del sistema operativo. Incluye sensores, vibrador o envío de SMS.
Preference: varios ejemplos de uso de preferencias.
Text: diferentes ejemplos de manipulación y visualización de texto.
Views: Android utiliza como elemento básico de representación la clase View (vista). Tenemos a nuestra disposición una gran cantidad de descendientes de esta clase para representar una interfaz gráfica (botones, cajas de texto, entradas, etc.). Visualiza estos ejemplos para mostrar las diferentes posibilidades.
NOTA: en algunas versiones del SDK, al compilar ApiDemos, aparecen errores de compilación. Para solucionarlo, prueba con otra versión de SDK o intenta corregir los errores.
NOTA: puede que cuando ejecutes la aplicación te indique el siguiente error:
Ocurre porque ya existe una aplicación con el mismo nombre de paquete (com.example.android.apis) y además ha detectado que la aplicación se ha firmado con un certificado digital diferente del que estás utilizando tú. Si hubiera sido creado por el mismo desarrollador, reemplazaría la aplicación ya instalada por la que queremos instalar.
Se soluciona desinstalando antes la aplicación. Tienes dos opciones:
•Como lo haces habitualmente en tu dispositivo: Ajustes/Aplicaciones/ ApiDemos/Desinstalar.
•Desde la línea de comando: adb uninstall com.example. android.apis
NOTA: este mismo problema también te ocurrirá cuando tengas instalado el entorno de desarrollo (Eclipse) en dos PC. Cada entorno de desarrollo tiene un certificado digital diferente. Cuando trates de instalar una aplicación en tu dispositivo físico, te aparecerá un error, si la aplicación ya ha sido instalada con el otro entorno.
Programación y errores de código son un binomio inseparable. Por lo tanto, resulta fundamental sacar el máximo provechos a las herramientas de depuración.
1.12.1. Depurar con Eclipse
El plug-in de Android para Eclipse tiene una excelente integración con el depurador de Eclipse. Introduce un error en tu código modificando el código fuente de MainActivity para que en método onCreate tenga este código:
Este cambio introduce un NullPointerException en tu código. Si ahora ejecutas tu aplicación, te aparecerá esto:
Pulsa Force Close (u OK) para finalizar la aplicación. Para averiguar más sobre el error, inserta un punto de ruptura (breakpoint) en el código fuente en la línea Object o = null; (el breakpoint se introduce haciendo doble clic en la barra de la izquierda). Entonces selecciona Run > Debug History > HolaMundo para ejecutarlo en modo Debug. Tu aplicación se reiniciará en el emulador, pero esta vez quedará suspendida cuando alcance el punto de ruptura que se ha introducido. Entonces puedes recorrer el código en modo Debug, igual que se haría en cualquier otro entorno de programación.
 |
Vídeo[tutorial]: Depurar una aplicación Android con Eclipse |
 |
Vídeo[tutorial]: Depurar con Android Studio |
1.12.2. Depurar con mensajes Log
Читать дальше