domingo, 29 de noviembre de 2015

Problemas con el HDMI de la app de Orange TV en Android y cómo solucionarlo.

La app de Orange TV para Android viene de serie capada para que no podamos usar el HDMI de nuestra tablet o smartphone para poder ver los canales en nuestro flamante televisor.

Tal día como hoy, me dispuse a conectar mi tablet por HDMI al televisor. Arranqué la app de Orange TV y puse un canal al azar. Conecté el cable HDMI a la tablet y WTF!

Error HDMI Orange TV

A santo de que los lumbreras de Orange deciden capar el HDMI para poder ver el contenido desde mi televisor? No me parece justo, ya que además de cliente de TV, también lo soy de móvil y ADSL / Fibra y me gasto los cuartos para que encima decidan si puedo usar o no el HDMI!

Ante esta indignación e imagino que la de mucha gente, indico una serie de pasos básicos para poder usar el puerto HDMI con la app de Orange TV de Android.
Básicamente consiste en eliminar el IntentFilter para que la aplicación no se entere cuando ocurran los eventos / acciones relacionados con:

  • HDMI_AUDIO_PLUG
  • HDMI_PLUGGED

Asumo que tienes conocimientos de reversing en Android, por lo que no voy a comentar muchos de los pasos por lo que los doy por sabidos.
  • Hazte con una copia del apk de Orange TV.
  • Decompilamos con apktool
    • ./apktool d com.orange.es.orangetv-1.apk
  • Modificar constructor privado ".method private constructor <init>()V" de la clase "com/discretix/drmdlc/api/DxBroadcastReceiver.smali" eliminando estas líneas:

    const-string v1, "android.intent.action.HDMI_AUDIO_PLUG"

    invoke-virtual {v0, v1}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V

    const-string v1, "android.intent.action.HDMI_PLUGGED"

    invoke-virtual {v0, v1}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V
  • Compilamos con apktool: 
    • ./apktool b com.orange.es.orangetv-1
  • Firmar (Me he generado el keystore "apktool.keystore" con contraseña "apktool" para firmar con el certificado "apktool")
    • jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore apktool.keystore -storepass apktool com.orange.es.orangetv-1.apk apktool
  • Verificamos firma
    • jarsigner -verify -verbose -certs com.orange.es.orangetv-1.apk
  • Alineamos
    • zipalign -v 4 com.orange.es.orangetv-1.apk "com.orange.es.orangetv-1.align.apk"
  • Desinstalamos la app original de Orange TV.
  • Conectamos nuestro dispositivo e instalamos la app "tuneada"
    • adb install com.orange.es.orangetv-1.align.apk
Para los más perezosos, dejo una copia del apk modificado. Es la versión 1.3.2, la tenéis aquí.

Saludos,

5 comentarios:

  1. Buenas, se nota que sabes del tema. Yo tengo un Ipad y hoy me he comprado un adaptador para ver lo del Ipad a la tv, se me ve todo bien menos OrangeTV. He intentado hacer lo que pones pero lo primero no lo entiendo. Y el enlace que pones lo he utilizado, se me descarga una cosa en "MEGA" pero ya no se que mas hacer, lo tengo ahí pero no me hace nada, si me pudieras ayudar te lo agradecería.. Un saludo!

    ResponderEliminar
  2. Muy bueno Subir la 2.1.1 porfavor

    ResponderEliminar
  3. Podrías subir la nueva versión. muchas gracias crack

    ResponderEliminar
  4. Sabrias modificar la app (2.1.1) para que no detecte root ?? Gracias

    ResponderEliminar