UnifiedNLP, Installation
Installer UnifiedNLP pour LineageOS (Android 16.0 et plus récent) sans GApps (Google Apps), pour les appareils non supportés par LinageOS.
Installation de UnifiedNLP
Activer adb
et adb
en mode super utilisateur root
Sur l'ordiphone, se rendre dans Paramètres > A propos du téléphone puis taper 7 fois sur le champ Numéro de build. Se rendre ensuite dans le menu Système > Paramètres avancés > Options pour les développeurs et activer les options Débogage USB et Débogage rooté.
Connecter l'appareil à l'ordinateur
Connecter l'appareil à l'ordinateur avec un câble USB et lancer la commande suivante pour vérifier que l'appareil est bien reconnu par adb :
adb devices
📝 Note: Pour pouvoir utiliser
adb
il faut avoir installé le paquetandroid-sdk-platform-tools
sur votre ordinateur.
Télécharger la dernière version de UnifiedNLP
sur l'ordinateur, télécharger la dernière version de UnifiedNLP (fichier NetworkLocation.apk
) à cette adresse.
Création des fichiers
Créer le fichier privapp-permissions-unifiednlp.xml
et ajouter les lignes suivantes :
<?xml version="1.0" encoding="utf-8"?>
<permissions>
<privapp-permissions package="com.google.android.gms">
<permission name="android.permission.INSTALL_LOCATION_PROVIDER"/>
<permission name="android.permission.ACCESS_FINE_LOCATION"/>
<permission name="android.permission.ACCESS_COARSE_LOCATION"/>
<permission name="android.permission.ACCESS_COARSE_UPDATES"/>
</privapp-permissions>
</permissions>
Créer un fichier nommé called 50-UnifiedNLP.sh
et ajouter les lignes suivantes (ce script permetra à UnifiedNLP de survivre aux mises à jours du système) :
#!/sbin/sh
#
# /system/addon.d/50-UnifiedNLP.sh
#
. /tmp/backuptool.functions
list_files() {
cat <<EOF
priv-app/UnifiedNLP/NetworkLocation.apk
etc/permissions/privapp-permissions-unifiednlp.xml
EOF
}
case "$1" in
backup)
list_files | while read FILE DUMMY; do
backup_file $S/$FILE
done
;;
restore)
list_files | while read FILE REPLACEMENT; do
R=""
[ -n "$REPLACEMENT" ] && R="$S/$REPLACEMENT"
[ -f "$C/$S/$FILE" ] && restore_file $S/$FILE $R
done
;;
esac
Démarrer adb en mode super utilisateur root
et remonter le système de fichiers pour pouvoir y accéder en lecture/écriture.
adb root
adb remount
Pousser les fichiers vers l'appareil
adb push NetworkLocation.apk /system/priv-app/UnifiedNLP/NetworkLocation.apk
adb push privapp-permissions-unifiednlp.xml /system/etc/permissions/privapp-permissions-unifiednlp.xml
adb push 50-UnifiedNLP.sh /system/addon.d/50-UnifiedNLP.sh
Modifier les droits d'accès au script 50-UnifiedNLP.sh
adb shell chmod 755 /system/addon.d/50-UnifiedNLP.sh
📝 Note: Lecture /écriture /exécution pour le propriétaire (
root
), lecture /exécution pour le groupe (root
) et les autres utilisateurs.💡 Astuce: Il est possible de parcourir et vérifier la copie des fichiers et des droits avec la commande :
adb shell ls -la
Enlever l'accès root
et redémarrer le système de l'ordiphone :
adb unroot
adb reboot
Activer UnifiedNLP
Vérifier la configuration de UnifiedNLP :
Dans les paramètres de l'appareil menu Localisation > Paramètres avancés > UnifiedNLP Settings, vérifier dans Self-Check les options activées /valides.
📝 Note: Location backend(s) set up n'est vérifié qu'après avoir activé le service d'arrière plan (backend) de localisation.
Installation de la localisation MozillaNlpBackend depuis F-Droid :
Rechercher et installer l'application MozillaNlpBackend
dans F-Droid
.
📝 Note:
MozillaNlpBackend
: Fournisseur de localisation UnifiedNlp de Mozilla.
F-Droid
: Application offrant un catalogue d’applications libres et à code source ouvert pour Android.
Toujours dans les options UnifiedNLP Settings, aller dans Configure location backends et cocher les services que vous souhaitez utiliser (Wifi, Données cellulaires).
Dans le menu Localisation > Recherche Wi-Fi et Bluetooth, activer Recherche Wi-Fi (si vous l'avez activé dans MozillaNlpBackend
) et désactiver Recherche Bluetooth.
Tester l'activation de la localistion dans une application de cartographie comme OsmAnd~.
Fin de l'activation
Désactiver les options Débogage USB et Débogage rooté dans les Options pour les développeurs et désactiver cette dernière.
🔗 Source: https://blog.eowyn.net/unifiednlp/