¡ Por favor active Javascript! / Please turn on Javascript!

Cualquier cosa sobre aplicaciones o relacionadas con la plataforma Android
Avatar de Usuario
Cazador
Colaborador
Mensajes: 1889
Registrado: 16 Abril 2015, 19:16
C. Prof.: Analista de Sistemas
Contactar:

Android TV para Raspberry Pi 3

Mensajepor Cazador » 06 Junio 2016, 11:31

Imagen

Muchas son las plataformas que se pueden desplegar en las famosas placas Raspberry Pi. En ELSATE.com os hemos detallado como poder utilizar una Raspberry Pi 3 como reproductor multimedia o SmartTV gracias a OSMC. Ahora os vamos a detallas algunas de las ventajas de tener Android TV en vuestra televisión, como la de que podreis todas la aplicaciones compatibles con Android, ya que su base esta basada en Android 6.0.

En Android TV podremos utilizar todas las aplicaciones compatibles con Android

A continuación os vamos a detallar los pasos a seguir para instalar Android TV en vuestra Raspberry Pi 3, y lo que esto supone, que podréis utilizar aplicaciones de Android en vuestra Raspberry Pi. Lo más sencillo es utilizar una imagen ya compilada, pero aquellos que quieran compilar/construir su propia versión pueden pasar al punto de Requisitos Previos para realizar todo el proceso.

Requisitos

- Descargar el software / utilidades para realizar la instalación
- Una Placa Raspberry Pi (versión 3) - ( cuesta unos 40 euros)
- Tarjeta MicroSD de 16 Gb de tamaño como mínimo para el correcto funcionamiento de Android TV (con adaptador SD o lector USB para la instalación desde un PC)

Grabar imagen .img Android TV para Raspberry Pi 3 con win32diskimager (sencillo)

Este es el proceso más sencillo para tener Android TV funcionando en nuestra Raspberry Pi 3.

Paso 1: Descarga de imagen
Descargamos la imagen de Android TV para Raspberry Pi 3 del siguiente enlace: atvrpi320160530.img.bz2 o de atvrpi320160530.img.bz2

Paso 2: Grabamos la imagen con Win32DiskImager
Utilizaremos el software Win32DiskImager (http://sourceforge.net/projects/win32diskimager/) para grabar la imagen IMG en la tarjeta SD.

Imagen
Redactor de ELSATE.com. Aficionado de la Tecnología, los Videojuegos, la Música Electrónica y el Deporte.


Avatar de Usuario
Cazador
Colaborador
Mensajes: 1889
Registrado: 16 Abril 2015, 19:16
C. Prof.: Analista de Sistemas
Contactar:

Mensajepor Cazador » 06 Junio 2016, 13:24

Instalación de Android TV para Raspberry Pi 3 mediante compilación (avanzado)

Aquellos que decidáis compilar de 0 la versión de Android TV para empezar tenéis que comprobar los requisitos previos que os detallamos a continuación (eso es si deseáis realizar la compilación vosotros mismos):

Requisitos Previos

Paso 1: Descarga el código fuente de Android con parches

Consulta el enlace oficial http://source.android.com/source/downloading.html

Código: Seleccionar todo

repo init -u https://android.googlesource.com/platform/manifest -b android-n-preview-2
cd .repo
git clone https://github.com/peyo-hd/local_manifests -b npv
repo sync


Paso 2: Compila el código para Raspberry Pi3

Consulta el enlace https://github.com/peyo-hd/device_brcm_rpi3 - A continuación en este mismo tema detallamos el proceso de Instalación compilando para Raspberry Pi3

Enlace Descarga

Imagen

Instalación compilando para Raspberry Pi3

Paso 1: Compila el Kernel para Raspberry Pi3

Instalaremos gcc-arm-linux-gnueabihf

Código: Seleccionar todo

sudo apt install gcc-arm-linux-gnueabihf


Código: Seleccionar todo

cd kernel/rpi
ARCH=arm scripts/kconfig/merge_config.sh arch/arm/configs/bcm2709_defconfig android/configs/android-base.cfg android/configs/android-recommended.cfg
ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- make zImage
ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- make dtbs


Paso 2: Instalar el modulo python mako

Código: Seleccionar todo

 sudo apt-get install python-mako


Paso 3: Parches para el frameworks/base
Realizaremos los siguientes cambios para solventar algunos detalles que se indican en https://github.com/peyo-hd/device_brcm_ ... gcat-flood y que os detallamos a continuación.

[*]Evitar desbordamiento del logcat

Este parche evita el desbordamiento del Logcat por eventos del ratón.

Código: Seleccionar todo

core/java/android/view/GestureDetector.java
 @@ line 490 @@ public class GestureDetector {
     public boolean onTouchEvent(MotionEvent ev) {
 +        switch(ev.getAction() & MotionEvent.ACTION_MASK) {
 +        case MotionEvent.ACTION_HOVER_MOVE:
 +        case MotionEvent.ACTION_HOVER_ENTER:
 +        case MotionEvent.ACTION_HOVER_EXIT:
 +        case MotionEvent.ACTION_BUTTON_PRESS:
 +        case MotionEvent.ACTION_BUTTON_RELEASE:
 +        case MotionEvent.ACTION_SCROLL:
 +            return false;
 +        }
          if (mInputEventConsistencyVerifier != null) {



[*]Activa GLSurfaceView

En la actualidad la compilación de mesa3d vc4 solo soporta los siguientes formatos

Código: Seleccionar todo

opengl/java/android/opengl/GLSurfaceView.java
@@ line 976 @@ public class GLSurfaceView extends SurfaceView implements SurfaceHolder.Callback
         public SimpleEGLConfigChooser(boolean withDepthBuffer) {
-            super(8, 8, 8, 0, withDepthBuffer ? 16 : 0, 0);
+            super(8, 8, 8, 8, withDepthBuffer ? 24 : 0, 0);
         }


[*]Evitar parpadeo de pantalla

El modo estricto se encuentra activado por defecto. Podemos evitarlo mediante la aplicación siguiente parche. Esta opción podría ser activado a través de Configuración -> Opciones de desarrollador -> El modo estricto activado (Settings -> Developer options -> Strict mode enabled)

Código: Seleccionar todo

core/java/android/os/StrictMode.java
@@ line 1068 @@ public final class StrictMode {
     if (IS_ENG_BUILD) {
-            doFlashes = true;
     }


[*]Activar la decodificación de vídeo por software

Código: Seleccionar todo

media/libstagefright/colorconversion/SoftwareRenderer.cpp
@@ line 113 @@ void SoftwareRenderer::resetFormatIfChanged(const sp<AMessage> &format) {
     case OMX_TI_COLOR_FormatYUV420PackedSemiPlanar:
     {
-            halFormat = HAL_PIXEL_FORMAT_YV12;
-            bufWidth = (mCropWidth + 1) & ~1;
-            bufHeight = (mCropHeight + 1) & ~1;
         break;
     }


Cómo aplicar el lanzador de Android TV

Podéis encontrar la última versión del lanzador (Launcher) binario en el siguiente enlace: https://developers.google.com/android/n ... ivers#fugu

Antes de realizar el paso de compilación de Android, tenéis que extraer el paquete binario de Android (apk) del enlace anterior. Una vez hecho esto colocaremos los ficheros en la siguiente ruta:

Código: Seleccionar todo

vendor/google/fugu/proprietary/LeanbackLauncher.apk


Después de eso hacer la compilación de Android y el sistema de archivos de destino de escritura. Compruebe que el lanzador Launcher2 se ha sustituido por el LeanbackLauncher en la carpeta de destino de la Tarjeta SD /system/priv-app .
Ambos lanzadores pueden coexistir. Por ultimo elimine Launcher2 en el PC donde esta montada la tarjeta SD.

Paso 4: Compila los fuentes de Android
Continua con la compilación como se indica en el siguiente enlace http://source.android.com/source/building.html

Código: Seleccionar todo

source build/envsetup.sh
lunch rpi3-eng
make


Paso 5: Preparar la tarjeta SD
La tarjeta SD deberia tener la siguiente tabla de particiones:

Descarga Software SDFormatterv4 desde la pagina oficial sdcard.org

Descarga Software fat32format

Partición 1
512MB para el arranque (BOOT) : Utilizar fdisk : W95 FAT32(LBA) & Bootable, mkfs.vfat
Partición 2
512MB para el /system : Utilizar fdisk, new primary partition
Partición 3
512MB para cache : Utilizar fdisk, mkfs.ext4
Partición 4
Restante para /data : Utilizar fdisk, mkfs.ex4
Establecemos la etiqueta del volumen para cada partición: system, cache, userdata . Para ello utilizaremos la opción -L de mkfs.ext4, comando e2label , o la opción -n de mkfs.vfat

Paso 6: Escribimos la partición del sistema

Volcamos la imagen del sistema en la partición correcta (partición 2 - /system )

Código: Seleccionar todo

cd out/target/product/rpi3
sudo dd if=system.img of=/dev/<partición 2> bs=1M


Paso 7: Preparación de partición de arranque Boot, kernel y ramdisk

En este punto tendremos que copiar a cada partición los archivos necesarios para "crear el sistema"

device/brcm/rpi3/boot/* a la raíz / de la partición 1
kernel/rpi/arch/arm/boot/zImage a la raíz / de la partición 1
kernel/rpi/arch/arm/boot/dts/bcm2710-rpi-3-b.dtb a la raíz / de la partición 1
kernel/rpi/arch/arm/boot/dts/overlays/vc4-kms-v3d.dtbo a /overlays/vc4-kms-v3d.dtbo de la partición 1
out/target/product/rpi3/ramdisk.img a la raíz / de la partición 1


Fuentes: https://github.com/peyo-hd/device_brcm_rpi3

Nota: Este tema en el foro pretende ser una guía/tutorial en castellano para aquellos que estén interesados en montar Android TV en una Raspberry Pi 3. Cualquier corrección o aportación sobre el mismo es bien recibida.
Redactor de ELSATE.com. Aficionado de la Tecnología, los Videojuegos, la Música Electrónica y el Deporte.


barthez919
Nivel 0
Mensajes: 1
Registrado: 30 Septiembre 2016, 11:03

Mensajepor barthez919 » 30 Septiembre 2016, 11:12

buenas.

funciona perfectamente, pero soy incapaz de instalar una APP , como o donde podría enconar información.


Avatar de Usuario
Cazador
Colaborador
Mensajes: 1889
Registrado: 16 Abril 2015, 19:16
C. Prof.: Analista de Sistemas
Contactar:

Mensajepor Cazador » 01 Octubre 2016, 11:49

barthez919 escribió:buenas.

funciona perfectamente, pero soy incapaz de instalar una APP , como o donde podría enconar información.



Las aplicaciones las tienes que instalar mediante APK. Empieza por utilizar un Explorador de Archivos para Android (ES Explorer). Tienes que enviar el APK desde otro dispositivo a tu Android TV y habilitar en Android TV la instalación de APP de terceros.

¿Cómo instalar Aplicaciones de Terceros en Android TV?

Paso 1: Habilitar instalación de fuentes desconocidas en Ajustes

No se puede instalar directamente un APK sin habilitar la instalación de fuentes desconocidas, esto está deshabilitado en general para proteger a los usuarios de la instalación de malware desconocido o aplicaciones infectadas. Entre las medidas que permiten la instalación de fuentes desconocidas es similar a la forma en que hacemos en los teléfonos inteligentes Android.

Ir al Menu de Aplicaciones> Ajustes > Seguridad > Orígenes Desconocidos ( App Drawer > Settings > Security and Restrictions )

Paso 2: Descargate el APK desde otro dispositivo, móvil, ordenador...

Tienes que comenzar a bajarte un APK de un explorador de archivos como por ejemplo el ES Explorer, para poder ya desde esa aplicación obtener y gestionar otros APKs de forma sencilla.

Paso 3: Transfiere el archivo APK a tu Android TV usando una memoria USB

Una vez que el archivo APK que quieres instalar ya se ha descargado por completo, copia el archivo en una memoria USB o cualquier otro dispositivo de almacenamiento de ese tipo. Luego conectas el dispositivo de almacenamiento en el que has descargado los archivos APK de Android TV.

Ahora utilizas ese explorador de archivos ES Explorer, para copiar los archivos APK que has descargado en tu Android TV
Redactor de ELSATE.com. Aficionado de la Tecnología, los Videojuegos, la Música Electrónica y el Deporte.


Avatar de Usuario
AllIn
Nivel 1
Mensajes: 39
Registrado: 25 Marzo 2017, 18:36

Mensajepor AllIn » 25 Marzo 2017, 19:19

Bufff menos mal que me funciono con la primera parte, si tengo que hacer lo de compilar no hubiese podido


Avatar de Usuario
ArcaBox
Nivel 1
Mensajes: 48
Registrado: 29 Marzo 2017, 11:44

Mensajepor ArcaBox » 29 Marzo 2017, 11:49

¿Alguien ha probado algún emulador en Android TV? ¿Qué tal en rendimiento, e mueve mejor que con Retropié?


Avatar de Usuario
Google
Nivel 1
Mensajes: 30
Registrado: 17 Mayo 2015, 12:24

Mensajepor Google » 29 Marzo 2017, 11:53

ArcaBox escribió:¿Alguien ha probado algún emulador en Android TV? ¿Qué tal en rendimiento, e mueve mejor que con Retropié?


El Snes9X va bastante bien la verdad, y te permite configurar el gamepad. Lo mejor es que lo pruebes, ya que lo bueno de Android Tv es que te permite además de poder tener emuladores, usar otras aplicaciones Android. :mola:


Avatar de Usuario
Cazador
Colaborador
Mensajes: 1889
Registrado: 16 Abril 2015, 19:16
C. Prof.: Analista de Sistemas
Contactar:

Mensajepor Cazador » 29 Marzo 2017, 11:55

ArcaBox escribió:¿Alguien ha probado algún emulador en Android TV? ¿Qué tal en rendimiento, e mueve mejor que con Retropié?


Pues como ves en la captura funcionan la mayoria de ellos. Es más puedes instalar la aplicación KODI en Android TV, asi que lo mejor es que si tienes una Raspberry Pi 3 lo pruebes tu mismo ;)
Redactor de ELSATE.com. Aficionado de la Tecnología, los Videojuegos, la Música Electrónica y el Deporte.






Volver a “General”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados