UnifiedNlp icon indicating copy to clipboard operation
UnifiedNlp copied to clipboard

Not working on LineageOS 14.1 03/09/2017

Open ShapeShifter499 opened this issue 8 years ago • 44 comments

The following patch to allow location providers outside of /system doesn't seem to work any more.

https://github.com/microg/android_packages_apps_UnifiedNlp/blob/master/patches/android_frameworks_base-N.patch

I built a fresh rom using code grabbed on 03/09/2017 and the self check doesn't show UnifiedNlp being registered in system. I have installed "Wifi Location Service", "Mozilla Location Service", and "Nominatim". The "Locations backend(s) set up" is checked.

Possibly related issue, https://github.com/microg/android_packages_apps_GmsCore/issues/341

System: Moto X Pure (Clark) LineageOS 14.1 Built on 03/09/2017 microG Services Framework Proxy v0.1.0 UnifiedNlp (no GAPPS) v0.2.4-79-g7f13738 LocalWifiNlpBackend v1.1.6 MozillaNlpBackend v1.3.2 NominatimNlpBackend v1.2.1

ShapeShifter499 avatar Mar 10 '17 12:03 ShapeShifter499

Are you using file based encryption? location providers might not work outside /system with file-based-encryption (even when using the patch). Did you reboot after installing microG?

mar-v-in avatar Mar 29 '17 16:03 mar-v-in

Chipping in to same same issue. Rebooted after installing (though not immediately).

System: Nexus 6P (angler) Encrypted LineageOS 14.1 (build 2017-04-03) UnifiedNlp (no GAPPS) 1.6.8 MozillaNlpBackend 1.3.2 OpenBmapNlpBackend 0.2.6

xeals avatar Apr 10 '17 08:04 xeals

@mar-v-in It's working for me when I have UnifiedNlp installed to /system. I do have full encryption set up, is that still a problem even when I boot up and enter in the encryption passphrase?

ShapeShifter499 avatar Apr 10 '17 17:04 ShapeShifter499

Recent android versions support two encryption modes: full-disk-encryption (FDE) and file-based-encryption (FBE). FDE is when you enter your password in a gray full screen during boot and will see the boot animation after decrypting the disk. FBE will boot straight to the lock screen and by unlocking the screen you are decrypting the files.

The patch will only work with FDE. I might invest some time soon in developing a more sophisticated approach that works with FBE as well.

mar-v-in avatar Apr 10 '17 17:04 mar-v-in

I just now read into FBE, I hadn't known that feature was there. Still I'm probably going to continue to use FDE as I can panic shutdown to secure my data when I have my device or remotely.

ShapeShifter499 avatar Apr 10 '17 18:04 ShapeShifter499

This should be more obviously documented… If you use GmsCore, which includes UnifiedNlp, push it into /system/priv-app, don't get UnifiedNlp. Only this apk:

valpackett avatar Apr 16 '17 12:04 valpackett

@myfreeweb already done what you said. GmsCore is installed in system/priv-app but in microG setting, "system support location provider" still not ticked and it doesn't recognize unifiednlp registered in system. I already reboot after installing microG though

Device : Lenovo K3 note ROM : AOSP Android : 7.1.2

ggwp21 avatar Apr 26 '17 13:04 ggwp21

No UnifiedNlp either on LineageOS.

Samsung i9305 Fresh LineageOS 14.1 20170503 Flashed https://github.com/nvllsvm/freecyngn/blob/70202a488faa235c5f66d3458484b4333b531e4b/20-freecyngn.sh minus LockClock No encryption set (FBE/FDE) UnifiedNlp (no GAPPS) v0.2.4 MozillaNlpBackend v1.3.2 NominatimNlpBackend v1.2.1 FakeStore v0.0.2

UnifiedNlp (no GAPPS) upgraded to v0.2.4-92-g3669bab, rebooted again, no improvements.


I didn't try the /system/priv-app method. /system is read-only and I don't seem to be able to remount it rw.

ghost avatar May 03 '17 21:05 ghost

Same problem here w/ LineageOS 14.1 on LG G5. UnifiedNlp shows as not being registered in the system, during self-check. Neither with the priv-app method.

I grepped the adb logcat output for NetworkLocation after pushing the apk and rebooting. Maybe any of this helps in debugging?

05-07 13:34:32.447  1815  1884 I PackageManager: /system/priv-app/NetworkLocation.apk changed; collecting certs
05-07 13:34:32.509  1815  1884 I PackageManager: Package com.google.android.gms codePath changed from /data/app/com.google.android.gms-1 to /system/priv-app/NetworkLocation.apk; Retaining data and using new
05-07 13:34:32.513  1815  1884 W PackageManager: Code path for com.google.android.gms changing from /data/app/com.google.android.gms-1 to /system/priv-app/NetworkLocation.apk
05-07 13:34:32.513  1815  1884 W PackageManager: Resource path for com.google.android.gms changing from /data/app/com.google.android.gms-1 to /system/priv-app/NetworkLocation.apk
05-07 13:34:44.316  1815  1815 W LocationProviderProxy-network: Odd, no component found for service com.android.location.service.v3.NetworkLocationProvider
05-07 13:34:44.771  1815  1866 W LocationProviderProxy-network: Odd, no component found for service com.android.location.service.v3.NetworkLocationProvider
05-07 13:35:03.725  2995  2995 W System  : ClassLoader referenced unknown path: /system/lib64/NetworkLocation
05-07 13:35:09.105  3285  3333 W System  : ClassLoader referenced unknown path: /system/lib64/NetworkLocation
05-07 13:35:09.105  3285  3333 D ApplicationLoaders: ignored Vulkan layer search path /system/lib64/NetworkLocation:/system/lib:/vendor/lib for namespace 0xf0d69090
05-07 13:35:13.312  3659  3659 W System  : ClassLoader referenced unknown path: /system/lib64/NetworkLocation
05-07 13:35:13.313  3659  3659 D ApplicationLoaders: ignored Vulkan layer search path /system/lib64/NetworkLocation:/system/lib64:/vendor/lib64 for namespace 0x74471f80f0
05-07 13:35:14.457  3659  3679 W System  : ClassLoader referenced unknown path: /system/lib64/NetworkLocation
05-07 13:35:14.458  3659  3679 D ApplicationLoaders: ignored Vulkan layer search path /system/lib64/NetworkLocation:/system/lib64:/vendor/lib64 for namespace 0x74471f8160

djmaze avatar May 07 '17 11:05 djmaze

I wonder if it's something to do only with LineageOS? I have CopperheadOS (last version, 7.1.2) encrypted with FBE and the patch from this repository, and UnfiiedNlp is working fine as an user application.
To be clear, I didn't install it under /system/priv-app (nor I did that for MicroG).

I get all the checkboxes in the self check and location is working fine in applications.

ksala avatar May 09 '17 10:05 ksala

Hi all, I installing UnifiedNlp with Mozilla backends but I have not tick on registered on system, I did not everyrhing, I only install them from F-Droid, what I should do now ro integrate into system?

My system: Sony Z3 compact Fresh Lineage 14.1-20170511-UNOFFICIAL-z3c Android 7.1.2 UnifiedNlp 1.6.8 MozillaNlp Backends 1.3.2 System not encrypted

coderex96 avatar May 15 '17 06:05 coderex96

The simplest way is uninstall all components that you have installed and flash my flashable zip.

ale5000-git avatar May 30 '17 08:05 ale5000-git

Same problem, location doesn't work on LOS 14.1. Installing gmscore as system app breaks my system, and as a user app location doesn't work.

My system: Moto G (2013) falcon Lineage 14.1-20170718-OFFICIAL GmsCore 0.2.4-103 MozillaNlp Backend 1.3.2 Not encrypted

ZJaume avatar Jul 24 '17 16:07 ZJaume

@ZJaume: What do you mean with "breaks my system"? It works perfectly on all phones where I have tried it.

ale5000-git avatar Jul 24 '17 17:07 ale5000-git

@ale5000-git I have converted gmscore to system app, and I rebooted the phone, and then it freezes a few seconds after the boot has completed. I had to remove the app from /system/priv-app manually with twrp.

ZJaume avatar Jul 24 '17 22:07 ZJaume

@ZJaume: Have you tried to install it directly with a flashable zip without have installed it before? Maybe the "conversion" didn't go well.

ale5000-git avatar Jul 25 '17 07:07 ale5000-git

all the "conversion" you need is just putting the apk into /system/priv-app, you can e.g. adb push while in the recovery

valpackett avatar Jul 25 '17 10:07 valpackett

@myfreeweb: Although it is rare that are a number of things that can make it fail in some ways (including a messed up or full system partition).

If you want you can try the "mostly" clean procedure:

  • Format /system
  • Flash ROM
  • Apply signature spoofing patch if needed
  • Flash microG unofficial installer

This can't fail (in the very rare case it fails I can fix the problem if reported with logs).

ale5000-git avatar Jul 25 '17 10:07 ale5000-git

I just dirty flash the LineageOS update, the vendor image, apply the signature patch and adb push the microG apk. Works every time.

valpackett avatar Jul 25 '17 10:07 valpackett

@myfreeweb: Sorry, I just confused you with ZJaume :)

ale5000-git avatar Jul 25 '17 11:07 ale5000-git

@ale5000-git I'll try next week.

ZJaume avatar Jul 25 '17 17:07 ZJaume

@Azphreal @ggwp21 @kehugter @djmaze @coderex96 @ZJaume

The latest version of microG unofficial installer automatically:

  • remove GApps;
  • remove conflicting location packages;
  • install microG (that include UnifiedNlp) and some backends.

It should fix all problems without effort.

ale5000-git avatar Aug 01 '17 13:08 ale5000-git

Thank you for your support, but I don't want a script that installs google propietary code (play store). Maybe if I have time I will explore your code to delete playstore installation or replace it with fakestore.

ZJaume avatar Aug 02 '17 10:08 ZJaume

@ZJaume: If you want you can try the test build with live setup here. It allow to choose between Google Play Store and FakeStore.

Note: Currently this test build works only on ARM phones.

ale5000-git avatar Aug 02 '17 11:08 ale5000-git

@ZJaume microG is not "google proprietary code" – but an open source replacement of that. In a nutshell, it fakes the Google APIs to fool apps into thinking they are there – but in fact, when requesting an area from "Google Maps", they receive it from Open StreetMap, etc.

IzzySoft avatar Aug 02 '17 14:08 IzzySoft

@IzzySoft I know perfectly well what it is mircoG, What I was saying was that microG unofficial installer installs Google Play Store apk by default, and I don't want it.

ZJaume avatar Aug 03 '17 12:08 ZJaume

@ZJaume Oh – I wasn't aware of that! Who could think of such a crazy idea? :scream: Doubt it was Marvin.

I've never used that installer – and knowing that, I doubt I ever will. Somehow completely defeats the purpose of the microG framework (at least for many of us). As an option I could understand it, but no more.

IzzySoft avatar Aug 03 '17 13:08 IzzySoft

@IzzySoft

Think as it in this way:

  1. Remove 75% of the evil; better performance, user exeprience unchanged, (almost) no features lost;
  2. Remove 100% of the evil; better performance, user experience decreased, many features lost.

It can also be installed on phones with GApps and transparently do the switch without downtimes in a way that also a child can do it :)

Bwt in the test version there is an option to choose.

ale5000-git avatar Aug 03 '17 13:08 ale5000-git

@ale5000-git Yupp, that's what I meant by "as an option I could understand it". I'm aware that this (installing µG and Playstore) is what some folks prefer as they feel there's no real alternative to the latter (and yes, there's quite something gained that way).

But the option to get rid of the evil altogether (and for the rare cases needed, simply use eg. Yalp) should be there. Good to read it's available in the test version; does that mean it's planned for the "regular" one?

IzzySoft avatar Aug 03 '17 14:08 IzzySoft

@IzzySoft: Yes, but for making it compatible with all recoveries I have to use a different way to allow live options without aroma (by only using the +/- volume keys) and this complicate things a bit.

ale5000-git avatar Aug 03 '17 15:08 ale5000-git