✏ µG Unified Nlp (with Installation Guide)

Installation Guide FP1:

Since 22.03.15 the Legacy Build is available on F-Droid and can simply be installed on the Fairphone 1(U), without the need to make it a system app. You just need to also download one or more backends (ideally one for wifi and one for cellular), enable network location in settings and reboot the device.

Installation Guide FP2 (on self compiled Open OS):

Installation Guide FP2 with microG GmsCore

(a) Install microG GmsCore with integrated UnifiedNLP
(b) Install Xposed
© Install Xposed module XposedGmsCore-UnifiedNLP, which easily integrates microG UnifiedNLP into the Open FP system
(d) Choose and install a backend and set it up in the microG app.
(e) Be sure to grant permissions to and activate all newly installed modules and to reboot once everything is right. You may need to repeat the steps above to get the modules to eventually bind to the system.

With this setup good results were obtained with OpenBmapNlpBackend. Déjà Vu Location Service, MozillaNlpBackend and LocalGsmNlpBackend.

Original Post:

Recently there was a new app on F-Droid:
µg UnifiedNlp.

Have you tried it and does it result in a faster fix for you, who are staying Google-free?

###Outdated installation Guide:

Follow these steps.

Also this is important (copied from post #30):

I ran into the same trouble and did a quick research, until I found this. adbd Insecure 2.00 did the trick for me. The error message from adb doesn’t come up anymore and everything works as expected.

Finally µg UnifiedNlp should appear in your apps drawer and you have to activate the desired backends in the µg UnifiedNlp app.

PS.: This is a wiki post. Feel free to improve this little tutorial by clicking the green pencil above.


I had installed some of the backends this app uses before and was pretty sure that gps got a fix much much faster afterwards, but when this app came out i realized that theese things are probably only supposed to work if you enable the wifi based location service (and not have google services installed), wich i never did.
so i can’t really tell if it changes anything, but my gps is super fast and accurate since some weeks, for whatever reason.

Are you still with Fairphone OS 1.6? I noticed a faster fix after upgrading to 1.8.

yes i’m using fos 1.6.

I wasn’t able to find out whether the F-Droid version is a legacy build for Android versions up to 4.3 or if it’s a Kitkat / Lollipop build (see UnifiedNlp Readme)…

At first µg UnifiedNlp didn’t work for me, because I hadn’t read the README carefully enough. I thought that it is sufficient to install µg UnifiedNlp and one of the backends from F-Droid but this didn’t work. In addition one has to install LegacyNetworkLocation.apk according to the README file, which can be donwloaded from here.

After that I tested µg UnifiedNlp together with the AppleWifi and the GSMLocation Backend and it was successful in the sense that I got an approximate position without having a GPS fix.


Where did you get an approximate position? In OSMand~?

Yes, I used Osmand~. The circle around the position is larger than usual and SatStat says that no GPS fix is acquired.

Are you install it as system app?

The F-Droid build doesn’t work for me. I installed LegacyNetworkLocation.apk from releases page as a normal app, not as a system app, and this works with LocalWifiNlpBackend from F-Droid.

I have FairPhoneOS 1.8 without Google Services and I need to enable Settings > Personal > Location access > Wi-Fi & mobile network location


I installed:

  • LegacyNetworkLocation.apk at /system/app
  • µg UnifiedNlp from F-Droid
  • AppleWifi and the GSMLocation Backend from F-Droid

This setup worked for me.

Edit: @paulakreuzer pointed out that my 2nd step is indeed unnecessary.

@fair2fair: I think you can uninstall µg UnifiedNlp from F-Droid, since it’s just the newer version of LegacyNetworkLocation.apk, wich doesn’t work with old Android Versions.
And the AppleWifi Backend - I believe - sends infos to Apple, so it’s not much better than using Google Location Services, or am I wrong?

@sim6: The LocalWifiNlpBackend only works at locations you have allready been at with a fixed GPS right?

I have the LocalWifi Backend and the GSMNetworkLocationProvider Backend and didn’t jet get it to work right.
If I switch GPS on and get a fix OSMand will locate me. If I then switch GPS off the radius around my location dot increases and the dot doesn’t move if I move. Probably because the wifis and cellular networks around are not in any of the databases yet.
I’d really like a backend for MozillaLocationService, because I have allready mapped my whole district with Mozilla Stumbler.

Has anyone tried any other Apps from the μg Project?
They say: “The μg Project aims to provide a free, fully compatible replacement of the often used proprietary GAPPS package by Google.” so there is e.g. an app that “Mocks the existence of the Google Play Store”.
I think it would be really cool if theese Apps can make Apps work that need Google Services installed by faking the existance of Google Services and maybe redirecting Apps that need Google Maps to OSMand.


Today is my lucky day! :smiley: MozillaNlpBackend is here! :smiley: :smiley:


@paulakreuzer If you prefer an offline solution for Mozilla Location Service, you can have a look at LocalGSMnlpbackend available from F-Droid. The previous version of this app required Android 4.3 but I contacted the developer and it works now on the fairphone. You can create a database using OpenCellid or MLS data either directly on your phone (takes a while) or on your pc.


are you talking about version 0.5.10? I just tried to install it but it didn’t work and F-Droid does state that it is incompatible with my device because it needs android 4.3+
or did you get another version elswhere?

btw. how did you contact him? I’d love to send mar-v-in some fanmail. :wink: currently I’m the only one donating to him on gratipay.

I’m talking about version 0.5.11, see https://f-droid.org/repository/browse/?fdfilter=Gsm&fdid=org.fitchfamily.android.gsmlocation Maybe your F-Droid app hasn’t updated yet to the latest version. Concerning the contact, I opened an issue on the github page of the project.


thanks, I’m dowmloading the database right now :smile:

Hi, I have a GAPPS-free FP1U running Kola Nut 1.8.
I would like to get location work without GPS fix and I saw this instructions in that page: https://github.com/microg/android_packages_apps_UnifiedNlp/blob/HEAD/README.md :

Android 2.3 - 4.3 (Gingerbread / Honeycomb / Ice Cream Sandwich / Jelly Bean)
Older Android versions are no longer officially supported. However I
still provide a legacy build, that should be compatible with those
It is required to have a rooted system to install on Jelly Bean and
Download LegacyNetworkLocation.apk
Mount /system read-write (from your PC, call adb root && adb remount)Copy LegacyNetworkLocation.apk to /system/app (from ypur PC, call adb push LegacyNetworkLocation.apk /system/priv-app/NetworkLocation.apk)Reboot (from you PC, call adb reboot) and continue at Usage

I activate USB debug, I connect my phone, and I write “adb root && adb remount” in a terminal on my ubuntu PC, but I get this message: “adbd cannot run as root in production builds”

How did you guys manage to install the LegacyNetworkLocation.apk ?


here i downloaded and installed LegacyNetworkLocation.apk (directly on the phone) and with /system/app mover (needs superuser access and busybox) I made it a system app. then you only need one or more backends and you are good to go.

1 Like

Thanks a lot, I managed to install it :smile:
One more question: is there some good reason not to install all backends or not install some of them ?
I would be tempted to install all of them in order to maximize location possibilities, but I wonder if there would be some problem, or conflict, or high battery usage, or whatever.

1 Like