Distribute flashable zip for Android 7+ for broken UnifiedNlp integration
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 14.6k
- Forks
- 3.2k
- Avg merge
- 12d 11h
- Merged PRs (30d)
- 4
Description
So I've recently migrated to Android 7.1.1 as LineageOS has picked up the ball and started producing builds for bacon again.
My update workflow has changed in the following respects:
-
Where I would have normally had Xposed+FakeGapps installed, I now use tingle, as it's the only reliable way I could currently find to allow spoof'd signatures - given that Xposed for 7+ doesn't exist yet. This numeral is merely informative.
-
The point of the issue: As you know, given the UnifiedNlp README and the patch you produced here you are at least aware of the issue and the simple fact that going forward, UnifiedNlp and therefore many apps will not work with the traditional "Just install the app" workflow, due to the fact that only privileged system apps may be a location provider in 7+.
Your solutions are:
-
Apply the patch (which you can only do if you intend to build your own ROM from scratch)
- CyanogenMod/LineageOS will not be including this patch: https://review.cyanogenmod.org/#/c/177082/
- Patching a ROM and building said rom is a non-trivial process for average users
-
As root, install GmsCore in
/system/priv-app/(You said it slightly different for UnifiedNlp-only but the problem remains the same, and I verified this works myself)
This leaves us with option #2, which if you're a nightly user (hint: No other user of LineageOS atm) is frankly really a pain. And worse, a conundrum:
- microG / GmsCore still needs to be installed prior to all GCM apps, and if it's reinstalled could it lose those subscriptions?
- Apps in
/system/priv-app/will be erased on upgrade
Given that, I think it would be really nice if you could produce a flashable .zip that also includes an addon.d script to "rollover" microG to the next upgrade like Gapps does it. (hopefully preserving the push subscriptions too) - note when I say "push subscription" I mean the apps listed under the "Google Cloud Messaging" menu and how that operates with the necessity of GmsCore having to be present first.
Bonus points: Perhaps a second zip could be produced that does what tingle is doing and one-shot both the patching of the framework to support spoof'd signatures, and also install microG in the correct area.
Thanks for all of your hard work! I've been using this for a long time now and it's otherwise has worked great and has given me great peace of mind.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the Android 7+ framework patch at patches/android_frameworks_base-N.patch and the issue's references to GmsCore installation and addon.d. Determine the scope of a flashable zip that places GmsCore in the required privileged location and preserves it across upgrades; done should include a working upgrade rollover and retained push subscriptions.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, java
- Domain
- mobile, release
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100