Skip to content

Newly introduced proprietary blob "QC Location" breaks any other location providers

Expected Behavior

UnifiedNlp could be run as a Network Provider and a Fused Location Provider.

Current Behavior

UnifiedNlp does not work.

Possible Reason

In newly introduced configurations, specifically those in overlay/frameworks/base/core/res/res/values/config.xml, the default settings for config_enableNetworkLocationOverlay and config_enableFusedLocationOverlay are false, with the settings config_networkLocationProviderPackageName, config_fusedLocationProviderPackageName and config_comboNetworkLocationProvider being com.qualcomm.location, which forces com.qualcomm.location to be the only package allowed to provide network/fused location, therefore effectively breaks UnifiedNlp.

Possible Solution

Set config_enableNetworkLocationOverlay and config_enableFusedLocationOverlay to be true. Or better, revert these commits, as QC Location is proprietary and closed-source, blatantly against LineageOS being free and open-source.

Steps to Reproduce

  1. Install UnifiedNlp and Mozilla Nlp Backend
  2. Try to obtain the geolocation in the battery saving mode (instead of device, "GPS").
  3. Failed

/device polaris /version lineage-16.0 /date 2019-10-05 /kernel 4.9.194-perf-gcfa3703e8c70 /baseband /mods

The introduced codes also affect beryllium. Here is a post at microG.

I have read the directions.

Edited by Shai4she