KhronosGroup / KhronosGroup/Vulkan-ValidationLayers
[FR] build AAR for android binaries, publish to github pacakges?
- Dominant language
- C++
- Stars
- 1k
- Forks
- 504
- Avg merge
- 11h 35m
- Merged PRs (30d)
- 224
Description
Not a bug, so neither template seems to apply.
Using the validation layers on Android requires jumping through a few hoops: https://developer.android.com/ndk/guides/graphics/validation-layer
This repo does already publish prebuilt libraries (thank you, that does simplify their use a lot), but just as a bare zip/tarball of libraries (and chrome flags the download as malware). Users have to vendor these libraries into their repo and remember to keep them up to date.
If they were instead an AAR and published to https://docs.github.com/en/packages ([free for public repos](https://github.com/features/packages#pricing)), those instructions reduce down to just defining the repo and declaring the dependency as described in https://docs.github.com/en/packages/working-with-a-github-packages-registry/working-with-the-gradle-registry#using-a-published-package. Android Studio would also highlight the dependency as out of date whenever a new version was available (I think so, anyway, maybe it only does that for specific libraries).
Is that something the maintainers here would be open to? Looking at https://github.com/KhronosGroup/Vulkan-ValidationLayers/blob/main/scripts/android.py and https://github.com/KhronosGroup/Vulkan-ValidationLayers/blob/main/.github/workflows/sdk_android_build.yml, it's not a whole lot of work to produce the AAR, and I can volunteer to do that part, but an owner here would need to enable the github package repo.
Contributor guide
Research direction
Start with scripts/android.py and .github/workflows/sdk_android_build.yml, which the issue identifies as the existing Android build path. Determine how to produce an AAR and publish it through GitHub Packages; done means Android users can declare the published dependency instead of downloading and vendoring a bare archive.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, github
- Domain
- build-system, mobile, release
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100