Skip to content

Instantly share code, notes, and snippets.

@thestinger
Last active August 23, 2024 09:05
Show Gist options
  • Save thestinger/ee536cbd1ca674b94dde05831192c348 to your computer and use it in GitHub Desktop.
Save thestinger/ee536cbd1ca674b94dde05831192c348 to your computer and use it in GitHub Desktop.
Sandboxed Google Play compatibility layer commits

Sandboxed Google Play compatibility layer (gmscompat)

Pixel eSIM management app integration

@IzumiSenaSora
Copy link

IzumiSenaSora commented Jun 3, 2022

Is this commit work in AOSP 11?

@thestinger
Copy link
Author

These are changes for the latest release of Android 12.1. There was a much less capable older implementation of the sandboxed Google Play compatibility layer for Android 11. Android 12 came out months later and it was ported to it. It has been substantially improved and largely rewritten since that point and there's no point starting from that. It would make more sense to port a device to Android 12 or at least to port this back to Android 11.

@Sewdohe
Copy link

Sewdohe commented Jun 4, 2022

I don't believe current.txt is meant to be edited directly. Instead, after making the required changes you're encouraged to run m art.module.public.api.stubs.source.module_lib-update-current-api to update the file automatically

@thestinger
Copy link
Author

The changes that are done automatically still need to be committed as part of the commit making the changes.

@Sewdohe
Copy link

Sewdohe commented Jun 4, 2022

I understand, just posting for my own and others future reference.

Thanks again for making this!

@awakened1712
Copy link

awakened1712 commented Aug 23, 2024

Do you have the commits that are easy to integrate into Android 14? I'm trying to cherry-pick "fwb/gmscompat: add compatibility layer for unprivileged GMS" from GrapheneOS A14 into AOSPA uvite. But there are too many dependencies and I'm not sure which ones are relevant

@thestinger
Copy link
Author

No, there are a lot more now since we greatly expanded the functionality it gets working. We also built a fair bit of generic infrastructure we use for both this and other purposes.

@thestinger
Copy link
Author

We're in the process of porting to Android 15 right now and Android 14 isn't going to be the focus much longer. We're testing what we can without early access to the latest beta sources.

@awakened1712
Copy link

No, there are a lot more now since we greatly expanded the functionality it gets working. We also built a fair bit of generic infrastructure we use for both this and other purposes.

Thanks for the info. I'm thinking of cherry-picking the old version of the compat layer in ProtonAOSP. Will that still work with latest PlayServices?

@thestinger
Copy link
Author

No, it won't work anymore. It needs significant changes. Proton AOSP was behind what we had even back then and that's not Android 14. It would be easiest to take the current much better compatibility layer from GrapheneOS, we just don't have documentation on the set of commits for it anymore and are unlikely to maintain it going forward.

@awakened1712
Copy link

I see. I'm going to work with current gmscompat from GrapheneOS then. It's just difficult to isolate commits required for gmscompat.

As the port is on going for A15. I would suggest to make a separate branch in fwb just for gmscompat. This way changes for gmscompat could be spotted more easily without the need of documentation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment