Tag - android

Entries feed

Sunday, May 20 2018

One Plus X E1001 and LineageOS

Installing LineageOS on a One Plus X E1001 (not E1003, I believe E1001 is an Asian version whereas E1003 was old in Europe) was a bit painful. This article will not repeat all instructions to install LineageOS on One plus X (which can be found here: https://wiki.lineageos.org/devices/onyx/install) but only cover some unexpected behaviors I need to circumvent to install LineageOS.

First no recent (3+) TWRP version was running fine: all refused to boot (fastboot boot path/to/recovery/file.img) with the following error message:

Remote: dtb not found error

I had to use an old TWRP 2.8.7 version to make it work. Here is the version that worked fine for me: twrp-2.8.7.0-6.0-onyx.img.

Then, the LineageOS zip file could not install because of the following error message:

Comparing TZ version TZ.BF.2.0-2.0.0137 to TZ.BF.2.0-2.0.0134
assert failed: oppo.verify_trustzone("TZ.BF.2.0-2.0.0137") == "1"
E:Installation aborted.

To fix this one, I had to first flash the firmware/bootloader with a more recent version. Installing the following file with TWRP did the trick: OPXBLUpdateOOS3.1.zip.

After that, LineageOS (one of the nightly version of May 2018) installed just fine.

I hope this will help some people facing the "dtb not found" and "assert failed: oppo.verify_trustzone" error messages!

Thursday, July 26 2012

Forcer les boutons virtuels sur Android Ice Cream Sandwich

La version Ice Cream Sandwich d'Android apporte les boutons virtuels (qui existaient dans Honeycomb) aux téléphones. Avec ces boutons virtuels, les fonctions de retour à l'écran précédent, de bond à l'écran parent ou d'affichage des tâches en attente n'ont plus besoin d'être déclenchées par des boutons physiquement sur l'appareil.

Conséquence : le dernier né de la gamme Nexus ne possède plus de bouton de navigation physique. Sans doute un avantage en termes de coût pour la production, mais également intéressant car on gagne un peu en espace d'écran (on peut voir les boutons virtuels s'éclipser dans certains cas, par exemple la lecture de vidéos).

J'ai toutefois découvert une autre utilité à ces boutons virtuels : pallier à des boutons physiques devenus défectueux.

Toutefois, par défaut, les images d'Android compilées pour des téléphones à touches physiques ne présentent pas les boutons virtuels. Voyons donc comment réactiver cet élément d'affichage. Quelle liberté !

Récupérons d'abord le fichier applicatif framework-res.apk qui se trouve dans /system/framework. Nous allons décompiler ce fichier applicatif, le modifier, le recompiler et le placer à nouveau dans le téléphone.

Pour le récupérer, connectons-nous via adb au téléphone :

adb pull /system/framework/framework-res.apk

Décompilons le fichier obtenu à l'aide des apktools : http://code.google.com/p/android-apktool/downloads/list Dans mon cas (ICS 4.0.4 via la ROM CyanogenMod 9 RC2 pour Samsung Galaxy S), il m'a fallu décompiler avec la version 1.4.2 et recompiler avec la version 1.4.3 des apktools :

java -jar apktool.jar d framework-res.apk

Le contenu du paquet est extrait dans un dossier ./framework-res.

On modifie alors le contenu du fichier ./framework-res/res/values/bools.xml et on transforme la ligne

<bool name="config_showNavigationBar">false</bool>

en

<bool name="config_showNavigationBar">true</bool>

On peut également désactiver le rétro-éclairage des boutons physiques en modifiant le fichier arrays.xml (dans le même répertoire) : 0 signifiant éteint et 1 allumé de manière assez intuitive.

<integer-array name="config_autoBrightnessButtonBacklightValues">
<item>0</item>
....
</integer-array>

Une fois les modifications effectuées, il est possible de recompiler l'ensemble :

java -jar apktool.jar b framework-res

et un nouveau paquet framework-res.apk est disponible. Comme nous n'avons modifié que les contenus des fichiers xml de ressources, alors on peut ouvrir le package nouvellement créé avec 7zip et en extraire le fichier resources.arc. On peut alors ouvrir le paquet original et verser le fichier resources.arc à l'intérieur (en remplacement de l'existant). On peut alors replacer l'apk hybride créé sur le téléphone :

adb push framework-res.apk /system/framework/framework-res.apk

On redémarre le téléphone et si tout a bien fonctionné, les boutons virtuels sont désormais affichés en bas du téléphone en remplacement des boutons physiques défectueux !

Tuesday, June 21 2011

Android et le libre !

http://fdroid.org/ Un répertoire d'applications libres pour les androphones - tout n'est pas génial mais ces applications ont l'énorme avantage d'être libres...

Alors on ne se prive pas et on installe ces applications sur son téléphone.

Petits widgets Android

Android est un système mobile extrêmement puissant et très facile à personnaliser pour répondre à ses besoins les plus fous !

Je vous présence ici deux petits "widgets" (comprendre : des mini-applications qui persistent sur les bureaux virtuels du téléphone) forts sympathiques.

1- Le premier s'intitute CalWidget (par egg'n Stone) Il permet d'afficher les éléments à venir sur l'écran du téléphone - un très bon complément à l'agenda par défaut du téléphone.

2- Le second se nomme APN on-off Widget (par Pedro Maicas) Il permet de couper (en un clic) la connectivité 3G sur le téléphone (fort utile en déplacement à l'étranger pour éviter toute tentation de "roaming").

Amusez-vous bien avec vos androphones !