Skip to content

Proposal: Android-Specific Metadata Support in Recipes #3179

@Novfensec

Description

@Novfensec

Introduce support in python-for-android to parse Android-specific metadata from pyproject.toml of pip-installed packages. This enables modular bundling of assets into APK builds, allowing packages to contribute platform-native components directly.

Example pyproject.toml Layout

[tool.python-for-android.android]
src = "android/src/"
res = "android/res/"
extra_manifest_xml = "android/extra_manifest.xml"
extra_manifest_application_xml= "android/extra_manifest_application.xml"
activities = [
    {
        "name": "org.package.android.MyActivity",
        "process": ":package_process",
    }
]
proguard = "android/proguard-rules.txt"
jniLibs = "android/jni/"
assets = "android/assets/"
resources = "android/resources"

etc. Etc.

How It Works

  • During dependency resolution (p4a.recipe or pip stage), check for [tool.python-for-android.android] in pyproject.toml.
  • Resolve declared paths from the site-packages directory.
  • Inject collected files into dists/<your_app>/build/ before Gradle build.

Please consider this.

THANKS!!

Metadata

Metadata

Assignees

No one assigned

    Labels

    need-discussionThe issue or pull request needs a discussion to take a team decission

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions