Página 1 de 6 12345 ... ÚltimoÚltimo
Resultados 1 al 10 de 52

Tema: Análisis y disertaciones técnicas sobre Android, SDK y Linux

  1. #1
    Veteran@ en el foro Avatar de j0534ng31
    Fecha de ingreso
    30 dic, 11
    Ubicación
    Gijón
    Mensajes
    264
    Última edición por j0534ng31; 30/01/2012 a las 08:33

  2. Los Siguientes 8 Usuarios Agradecieron a j0534ng31 por Este Mensaje:


  3. #2
    Veteran@ en el foro Avatar de j0534ng31
    Fecha de ingreso
    30 dic, 11
    Ubicación
    Gijón
    Mensajes
    264

    Predeterminado Introducción

    Presentación:

    Este hilo nace con la idea de ser una recopilación (más o menos organizada) de información acerca de las herramientas de desarrollo disponibles en y para un dispositivo Android, y de los métodos que resultan de aplicar dichas herramientas.

    El PRS-T1 es el primer lector de Sony en el que subyace el sistema operativo Android y, puesto que muchas de las utilidades disponibles llevan usándose largo tiempo en otros dispositivos similares, no partimos de cero y sin herramientas para adaptarlo a nuestras necesidades.



    Declaración de intenciones:

    Al no ser éste un foro ni de técnicos ni de desarrolladores, no abunda aquí la información de este tipo. Además, creo estar acertado al suponer que, la mayor parte de los foreros interesados en el tema, carecerán de los conocimientos y de la jerga informática necesaria para comprenderla.

    El propósito del hilo será más didáctico que práctico. Se pretende que los temas tratados sean comprendidos por todos y que se aborden desde varias perspectivas y/o con distintas técnicas. No se pretende crear una mera recopilación de procedimientos útiles que, por otra parte, podríamos encontrar con relativa facilidad en otros foros.

    Con la esperanza de que resulte ameno, se intentará aquí adaptar el lenguaje utilizado al más profano de los lectores o, en el caso de que no sea posible, adaptarlo y/o ejemplificarlo para facilitar su comprensión.



    Organización del hilo:

    Habrá varios mensajes (posts) en posición fija y con contenido dinámico, como puedan ser esta introducción, un índice de temas tratados, un índice de novedades (temas tratados recientemente), una lista de archivos para descargar y un glosario.

    Cada tema específico se desarrollará en un sólo mensaje, que se irá ampliando y corrigiendo a medida que resulte necesario. Dado que habrá un número indefinido de mensajes de este tipo, en aras de la simplicidad organizativa, no tendrán una posición fija en el hilo y serán accesibles a través del índice.



    Utilización del hilo:

    Se pretende que, todo lector que detecte un error, o no comprenda algo, o quiera profundizar más, o desee tratar un tema nuevo, participe en el hilo... Y que, todo lector que sepa responder al anterior, lo haga libremente... Por mi parte, en función del tiempo disponible, responderé a las dudas, corregiré los temas tratados y "alimentaré" el hilo con nuevos temas.

    Dado que tiene vocación de convertirse en un hilo grande y de difícil mantenimiento, agradeceré que las participaciones se atengan, en general, a los temas que trata el hilo.

    Quizás sobre en este foro, pero advierto que toda participación que falte al respeto a algún usuario, o esté repleta de barbarismos y/o solecismos será automáticamente ignorada (y, en su caso, reportada a un moderador.)

    Por otra parte, si alguna información es del agrado de alguien, basta para agradecerla utilizar la herramienta del foro a tal efecto. De ese modo mantendremos más limpio y legible el hilo durante más tiempo.



    Sobre el autor:

    Mi nombre es José Ángel, y podéis utilizarlo si mi alias (una transliteración del mismo) os resulta difícil de escribir.

    Tengo 40 años, soy asturiano, informático de profesión, trabajo por cuenta propia y me dedico a la seguridad y mantenimiento de sistemas informáticos de todo tipo en empresas de varios sectores.

    Siento predilección por el hardware, sus modificaciones y sus usos alternativos. Además, me encanta leer, motivo por el que conseguí mi primer lector (un Papyre 6.1) y, ahora, el PRS-T1.

    Mi interés por el sistema Android se originó al conseguir mi teléfono móvil, un HTC Magic, al que tengo un gran aprecio. Tras aprender algo del tema, realicé varias modificaciones en su firmware y, actualmente, lleva una ROM creada por mí expresamente para él. No tengo relación profesional alguna con el sistema Android, pero sí con los sistemas Unix y GNU/Linux que le sirven de base.

    Trabajo normalmente en un portátil con Windows 7 64bits y Linux Fedora 15 64bits.
    Última edición por j0534ng31; 24/01/2012 a las 10:49

  4. Los Siguientes 5 Usuarios Agradecieron a j0534ng31 por Este Mensaje:


  5. #3
    Veteran@ en el foro Avatar de j0534ng31
    Fecha de ingreso
    30 dic, 11
    Ubicación
    Gijón
    Mensajes
    264

    Predeterminado Archivos para descargar

    Recopilación de enlaces a descargas de archivos útiles que se mencionan en los temas aquí tratados.



    Redes ad-hoc en el T1 - JoikuSpot:
    Última edición por j0534ng31; 25/01/2012 a las 17:43

  6. #4
    Veteran@ en el foro Avatar de j0534ng31
    Fecha de ingreso
    30 dic, 11
    Ubicación
    Gijón
    Mensajes
    264

    Predeterminado Glosario

    Recopilación de definiciones o explicaciones breves de los términos que se mencionan en los temas aquí tratados.
    Última edición por j0534ng31; 24/01/2012 a las 10:43

  7. #5
    Veteran@ en el foro Avatar de j0534ng31
    Fecha de ingreso
    30 dic, 11
    Ubicación
    Gijón
    Mensajes
    264

    Predeterminado Re: Análisis y disertaciones técnicas sobre Android, SDK y Linux

    Mensaje Reservado 4

  8. #6
    Veteran@ en el foro Avatar de j0534ng31
    Fecha de ingreso
    30 dic, 11
    Ubicación
    Gijón
    Mensajes
    264

    Predeterminado Re: Análisis y disertaciones técnicas sobre Android, SDK y Linux

    Mensaje Reservado 5

  9. #7
    Veteran@ en el foro Avatar de j0534ng31
    Fecha de ingreso
    30 dic, 11
    Ubicación
    Gijón
    Mensajes
    264

    Predeterminado Mensaje de uso temporal

    Mensaje de uso temporal para recopilar información de otros hilos.

    Lo que podáis ver aquí está en proceso de redacción.
    No tiene por qué ser correcto ni tampoco completo...

    Si no lo leéis, os calentareis menos la cabeza

    ************************************************** *







    Copias de seguridad del PRS-T1:


    Debería ser la primera operación a realizar con el T1, después de hacernos con él e inmediatamente antes de rootearlo.


    Se crean y restauran:
    • Desde un PC, con la herramienta de Boroda (1)
      (Sólo funciona con firmwares "1.0.00.09010", "1.0.00.09270" y "1.0.02.10280")

    • Desde un PC, usando ADB, o telnet, o ssh (1) y (2)

    • Desde el propio T1, en 'modo recovery'
      (Requiere utilizar una tarjeta Micro-SD)
    1. Este método, aunque funciona, NO es conveniente para "system" o "data".
      Al estar en uso esas particiones, podrían ocurrir errores durante la copia...
      La copia corrupta, al restaurarse cuando sea necesario, producirá errores...
      Y, una copia de seguridad con errores... ¡No proporciona ninguna seguridad!

    2. Sólo se puede usar si "system" funciona correctamente y el T1 arranca bien.
      Si no, el demonio ADB no estará activo y no se podrá conectar al T1 por ADB...
      Y, por tanto, ¡no se podrá restaurar la copia de seguridad usando este método!
      NO lo explicaré, porque es el más inútil y muy similar al del modo recovery.



    Backup usando la herramienta de Boroda:

    Para realizar las copias de seguridad:
    Código:
    
    :: Copiar el "disco" completo del T1 al PC (2GB, todo el T1)
    ::    (Funciona... equivale a volcar la ROM completa)
    ebook_msc  name "PRS-T1"  get  /dev/block/mmcblk2  mmcblk2.img
    
    
    :: Copiar parte del "disco" del T1 al PC (0x18 MB = 24 MB)
    ::    (Guarda el área de arranque completo. Incluyendo... )
    ::    (... Registro de Arranque Maestro (MBR) y Tabla de Particiones)
    ::    (Se hará si NO se hace el anterior, más completo, pero inmenso)
    ebook_msc  name "PRS-T1"  get  /dev/block/mmcblk2  bootarea.img 0x1800000
    
    Sony Reader MSC utility 1.06 (c) 2009 Igor Skochinsky, Vladimir Boroda
    avail: 0
    openDrive [\\.\F:]: 1
    usbInitCheck: 0
    /dev/block/mmcblk2->mmcblk2_1800000.img: 1958739968
    .........................................................................
    .........................................................................
    
    
    :: Copiar cada "partición" del T1 a un archivo en el PC:
    
    :: Partición 'Recovery' (el sistema de recuperación)
    ::    (Contiene un sistema Linux reducido, aunque se puede modificar)
    ::    (Tiene lo imprescindible para instalar actualizaciones oficiales)
    ::    (... Y nuestros rooteos personalizados ;) )
    ebook_msc  name "PRS-T1"  get  /dev/block/mmcblk2p1  mmcblk2p1.img
    
    :: Partición 'Diag' (el sistema de diagnóstico)
    ::    (Contiene un sistema Linux más completo que el de 'Recovery')
    ::    (Son herramientas de sistema para resolver problemas comunes)
    ebook_msc  name "PRS-T1"  get  /dev/block/mmcblk2p2  mmcblk2p2.img
    
    :: La tabla de particiones extendida
    ebook_msc  name "PRS-T1"  get  /dev/block/mmcblk2p3  mmcblk2p3.img
    
    :: Partición 'READER' (memoria interna)
    ebook_msc  name "PRS-T1"  get  /dev/block/mmcblk2p4  mmcblk2p4.img
    
    :: Partición 'fonts' (tipos de letra)
    ebook_msc  name "PRS-T1"  get  /dev/block/mmcblk2p5  mmcblk2p5.img
    
    :: Partición 'dictionaries' (diccionarios)
    ebook_msc  name "PRS-T1"  get  /dev/block/mmcblk2p6  mmcblk2p6.img
    
    :: Partición 'SETTING' (programa Sony reader para PC)
    ebook_msc  name "PRS-T1"  get  /dev/block/mmcblk2p7  mmcblk2p7.img
    
    :: Partición 'preload' (guía de usuario + libros de muestra)
    ebook_msc  name "PRS-T1"  get  /dev/block/mmcblk2p8  mmcblk2p8.img
    
    :: Partición 'data' (los datos del lector Sony)
    ::    (Contiene TODA la configuración y nuestras aplicaciones)
    ebook_msc  name "PRS-T1"  get  /dev/block/mmcblk2p9  mmcblk2p9.img
    
    :: Partición 'system' (el sistema del lector Sony)
    ::    (Contiene el sistema Android y los programas de Sony)
    ebook_msc  name "PRS-T1"  get  /dev/block/mmcblk2p10 mmcblk2p10.img
    


    Restore usando la herramienta de Boroda:

    Para restaurar las copias de seguridad:
    Código:
    
    :: Copiar cada archivo del PC a su "partición" del T1 correspondiente
    
    :: Partición 'data'
    ebook_msc  name "PRS-T1"  put  mmcblk2p9.img   /dev/block/mmcblk2p9
    
    :: Partición 'system'
    ebook_msc  name "PRS-T1"  put  mmcblk2p10.img  /dev/block/mmcblk2p10
    
    :: Partición 'READER' (sólo si es necesario)
    ebook_msc  name "PRS-T1"  put  mmcblk2p4.img   /dev/block/mmcblk2p4
    
    :: Partición 'SETTING' (sólo si es necesario)
    ebook_msc  name "PRS-T1"  put  mmcblk2p7.img   /dev/block/mmcblk2p7
    


    Backup desde el 'modo recovery':















    Conectar el T1 en 'modo recovery':












    ¿Qué es el Android SDK?


    Según google, en el sitio español de Android:


    "Android es una 'pila de software' para dispositivos móviles que incluye un sistema operativo, aplicaciones esenciales y middleware."

    "El Android SDK proporciona las herramientas y las API necesarias para desarrollar aplicaciones que se puedan ejecutar en dispositivos con la tecnología de Android."



    Desde mi punto de vista:


    "Android es un sistema operativo de Google, que consiste en una distribución Linux sobre la que se ejecuta una máquina virtual Java modificada.
    Inicialmente, se creó para gobernar dispositivos móviles (concrétamente teléfonos.)"

    "El Android SDK ('Software Development Kit' o 'Kit de Desarrollo de Software de Android') permite desarrollar aplicaciones para dispositivos Android utilizando el lenguaje de programación multiplataforma Java."



    En la página web de Android para desarrolladores hay mucha información, muy buena y bien organizada, sin embargo, sólo está disponible en inglés y en chino.



    ¿Lo necesito realmente?


    Todo aquél que no tenga ninguna intención de programar, lo encontrará igualmente útil porque incluye:

    1. Un paquete de utilidades que permitirá conectar el PC al T1 (por cable USB o por red inalámbrica) para, en cierto modo, controlarlo desde el PC.

      La conexión mediante red inalámbrica evita usar el cable USB cada dos por tres, y envejecer la batería del T1 prematuramente.

    2. Un 'emulador de dispositivos Android' que, aun siendo de uso opcional, nos facilitará muchísimo la vida. Es un QEMU adaptado.



    Algunos de los usos más habituales y prácticos del paquete de utilidades son:
    • 'adb logcat': Muestra información de control de fallos.
      Por ejemplo, permite ver por qué no instala alguna aplicación...
      O por qué otras aplicaciones se cierran solas según las abrimos.
      'adb logcat *:E *:S': Muestra sólo mensajes de error.
      'adb logcat *:W *:S': Muestra mensajes de advertencia y error.
      'adb logcat MiApp:F *:S': Muestra errores fatales de MiApp.

    • 'adb remount': Re-monta todas las particiones en modo lectura/escritura.

    • 'adb push/pull': Envía y recibe archivos, del PC al T1 y viceversa.
      Por ejemplo, envía el 'su' para rootear el T1 sin usar paquetes de rooteo...
      O el 'busybox', que tanta utilidad va a tener en el futuro.

    • 'adb shell': Envía comandos para que los ejecute el T1.
      Por ejemplo, borrar archivos que sobren, deja hueco para otros más útiles.

    • 'adb install/uninstall': Instala y desinstala aplicaciones en el T1.
      Evita apagar el T1 para sacar/meter la Micro-SD... Y evita usar 'root explorer'.
      Evita instalar packs de rooteo con el único fin de actualizar aplicaciones.

    • 'adb sync': Sincroniza el contenido de una carpeta del PC con otra del T1.
      Por ejemplo, mantiene actualizado un almacén de aplicaciones en la Micro-SD.

    • 'adb bugreport': Genera un archivo con mucha información relativa al T1.

    • 'adb backup/restore': Crea y restaura copias de seguridad de archivos.
      Por ejemplo, hace backup (con una única orden) de TODA aplicación instalada.

    • 'adb reboot': Reinicia el T1.
      Funciona aun cuando el T1 parece colgado, o nos agobia un mensaje 'sin fin'.

    • 'aapt list Mi_App.apk': Lista los archivos que contiene la aplicación.

    • 'aapt dump permissions Mi_App.apk': Indica que permisos requiere.
      Sirve para saber por qué una aplicación se niega e ser instalada, por ejemplo.

    • 'aapt add/remove Mi_App.apk archivos': Añade/Elimina archivos al/del apk.

    • 'ddms': Abre una ventana de información de debug de la 'maquina Dalvik'
      Muestra un registro, el uso de CPU, de memoria e información de los procesos.



    A su vez, el emulador de Android permite:
    • Arrancar máquinas virtuales especificando un nombre preasignado:
      'emulator @Mi_MV' activará la denominada 'Mi_MV'.
      (Ver la inmensa lista de opciones con 'emulator -help')

    • Gestionar visualmente las máquinas usando 'AVD Manager'.


      Nombre:  AndroidAVDManager.jpg
Visitas: 155
Tamaño: 9.7 KB

    • Probar aplicaciones desde el PC, sin "ensuciar" nuestro T1.

    • Instalar un market, si nuestro T1 no lo permite.

    • Hacer y probar scripts aun cuando no se tenga el T1 "a mano".
      Evita estropear el sistema del T1 si un script no funciona bien.

    • Instalar tantas aplicaciones como desee, hacer un backup y crear un almacén.
      Evita tener que instalar y actualizar las aplicaciones en el T1 de una en una.



    Instalar el Android SDK:


    El proceso consiste en:
    1. Descargar e instalar el 'Java SE Development Kit (JDK)'

    2. Descargar e instalar el 'Android SDK' apropiado nuestro sistema.
      (Yo uso el recomendado para Windows y lo instalo en C:\Android)

    3. Completar un asistente que, como mínimo, instalará:
    • Tools
      (Android tools y Platform tools)

    • Android 2.2 API 8 - froyo
      (Seleccionar todo)

    • Extras (Android support, USB driver, Webdriver y Market Licensing)

    • (OPCIONAL): Android 2.3.3 API 10 - gingerbread
      (Seleccionar todo)


      Nombre:  AndroidSDKManager.jpg
Visitas: 161
Tamaño: 13.9 KB



    Desarrollar aplicaciones:


    Además del Java SE DK y Android SDK, para programar aplicaciones Android se necesita:
    • 'Eclipse': un entorno de desarrollo integrado (IDE) que centraliza y facilita la labor.
      (Se podría usar otro, o ninguno,... pero es el que usa el 90% de la gente)

    • El 'plugin ADT (Android Development Tools)' de Android para Eclipse, que permite:
    1. Crear y configurar proyectos nuevos de Android

    2. Diseñar y programar aplicaciones de Interfaz de Usuario (UI)

    3. Depurar y evaluar el rendimiento de aplicaciones, con ayuda del Android SDK

    4. Generar instaladores de aplicaciones en formato '.APK' (firmados o sin firmar)


    La instalación consiste en:
    1. Descargar e instalar 'Eclipse' (versión Classic o Java Developers)
      Hay versiones para Windows, Linux y MacOS; de 32 y 64 bits.
      Se instala como cualquier otro programa.
      (Yo lo instalo en C:\Eclipse)

    2. Ejecutar 'Eclipse' e ir a 'Help' --> 'Install New Software' --> 'Work with:'

    3. Escribir "https://dl-ssl.google.com/android/eclipse/" y pulsar [ENTER]
      A veces da error,... en ese caso, probar también con "http://"

    4. Pulsar 'Select all' --> 'Next'

    5. Reiniciar 'Eclipse' y configurar el nuevo plugin:

    6. Ir a 'Window' --> 'Preferences' --> 'Android' --> 'SDK Location:'

    7. Escribir la ruta donde está instalado el Android SDK
      (En mi caso: C:\Android)












    Activar ADB en el T1:


    1: Tener el sdk instalado y funcionando:

    - Instalar enable-adb.zip en el T1 (Igual que el proceso de rooteo)
    - Activar "Android Settings -> Applications -> Development -> USB Debugging Enabled"... (en español debería ser "configuración -> aplicaciones -> desarrollo -> Activar depuración USB"
    - Instalar Android SDK en el PC
    - Editar <android-sdk-install-path>\extras\google\usb_driver\android_winusb.inf y...
    - Añadir, bajo la sección [Google.NTx86], la línea "%CompositeAdbInterface% = USB_Install, USB\VID_054C&PID_05C2&MI_01"
    - Editar "%USERPROFILE%\.android\adb_usb.ini" añadiendo una linea "0x054C"
    - Conectar el T1 al PC y NO dejar que se conecte en "modo de transferencia de datos"
    - Si no pide un controlador, hay que ir al "administrador de dispositivos" de Windows -> "controladores USB" -> "Dispositivos de almacenamiento masivo"... Mirar los "detalles -> ID de Hardware" de cada dispositivo hasta que encontremos uno cuyo "ID de Hardware" = USB\VID_054C&PID_05C2... Ese dispositivo lo borraremos y pulsaremos "actualizar dispositivos" (F5)
    - Si pide un controlador, darle la ruta "<android-sdk-install-path>\extras\google\usb_driver" para que lo busque... Instalará un dispositivo adb

    3- Para comprobar si funciona la versión que tienes instalada, conecta el T1 para adb (no modo almacenamiento) y ejecuta en una ventana msdos del PC:
    Código:
    cd c:\android\tools
    adb kill-server
    adb devices
    Deberá responderte con una línea con un dispositivo y unos numerajos

    Paso 2: Si ya tienes instalado adb y funciona, se supone que debes:

    1- Conectar el T1 al PC en modo adb y sin tarjeta Micro SD puesta

    2- Extraer el contenido del enable_adb.zip de boroda (que ya debes tener por ahí dado que te funciona el adb) en una carpeta cualquiera del PC,... por simplificar estaría bien guardarlo en la misma carpeta que las utilidades del sdk
    (Como no lo tengo instalado hace meses no me acuerdo, pero creo que era c:\android\tools\)

    3- Arrancar el T1 en modo recovery.
    Última edición por j0534ng31; 05/02/2012 a las 02:06

  10. #8
    Veteran@ en el foro Avatar de nemo3146
    Fecha de ingreso
    26 may, 11
    Ubicación
    Madrid
    Mensajes
    708

    Predeterminado Re: Análisis y disertaciones técnicas sobre Android, SDK y Linux

    Cudado el primer lector con Android fue el Nook.........

  11. #9
    Veteran@ en el foro Avatar de j0534ng31
    Fecha de ingreso
    30 dic, 11
    Ubicación
    Gijón
    Mensajes
    264

    Predeterminado Re: Análisis y disertaciones técnicas sobre Android, SDK y Linux

    Cita Iniciado por nemo3146 Ver mensaje
    Cudado el primer lector con Android fue el Nook.........
    Ya... pero especifico de Sony...

    Me ha quedado un tostón y encima vacío de contenido

    ¿Tienes idea de qué hay que hacer para que aparezcan definiciones sobre las palabras? Por ejemplo, firmware aparece automáticamente en color verde y, al colocarte sobre ella, aparece una explicación...

    Con un visor de código fuente veo que es un "acronym", pero no se dónde se definen...
    Última edición por j0534ng31; 24/01/2012 a las 11:01

  12. #10
    Veteran@ en el foro Avatar de nemo3146
    Fecha de ingreso
    26 may, 11
    Ubicación
    Madrid
    Mensajes
    708

    Predeterminado Re: Análisis y disertaciones técnicas sobre Android, SDK y Linux

    Cita Iniciado por j0534ng31 Ver mensaje
    Ya... pero especifico de Sony...

    Me ha quedado un tostón y encima vacío de contenido

    ¿Tienes idea de qué hay que hacer para que aparezcan definiciones sobre las palabras? Por ejemplo, firmware aparece automáticamente en color verde y, al colocarte sobre ella, aparece una explicación...

    Con un visor de código fuente veo que es un "acronym", pero no se dónde se definen...
    Ni idea....

Temas similares

  1. pdf en linux
    Por pablogu en el foro Formatos de e-books
    Respuestas: 2
    Último mensaje: 18/07/2011, 21:25
  2. Sobre el Advent Vega y leer en Android en general
    Por Logseman en el foro Otros E-readers
    Respuestas: 10
    Último mensaje: 20/04/2011, 20:15
  3. Busco ebook sobre Android
    Por Guillermo Madrid en el foro Foro general
    Respuestas: 0
    Último mensaje: 31/03/2011, 20:22
  4. Dudas sobre el Adobe Digital Editions en GNU-Linux
    Por oscar_abilleira en el foro Netronix
    Respuestas: 4
    Último mensaje: 30/01/2011, 10:51
  5. Dudas técnicas
    Por petrusymartus en el foro PRS- 350, PRS-650 y PRS-950
    Respuestas: 2
    Último mensaje: 03/11/2010, 22:35

Etiquetas para este tema

Permisos de publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •