Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

[Feature]: auto-discover Java sources bundled in pip installed packages

Open
#3,362 12 comments 3 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
56/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Active
Tech stack
android, java, python

Research direction

Start in build.py immediately after the pip install stage and trace how source paths are registered and passed to Gradle. Implement discovery of top-level package android_java/ marker folders, then verify that discovered paths are registered for the Gradle build and consider the proposed folder cleanup.

Written by the indexing model from the issue text.

Description

feature-request

If a pip-installable package ships Java source files alongside its Python code, p4a has no way to pick those up automatically. The only supported path is Buildozer's android.add_src, which requires the app developer to add files manually.

Proposed solution

Right after the pip install stage in build.py scan the newly installed top level package directories for a fixed marker folder: android_java/ (for example). If a package contains one, register its path and send to gradle.

Optionally also delete that folder as it's not required/used.

Original idea by @kuzeyron.

CC: @AndreMiras

Dominant language
Python
Stars
8.9k
Forks
2k
Avg merge
12h 20m
Merged PRs (30d)
9

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from kivy/python-for-android

All issues in kivy/python-for-android

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.