kivy / kivy/python-for-android
To make android build through p4a work in native Windows without WSL2/ VirtualBox etc
- 主要语言
- Python
- 星标
- 8.9k
- 派生
- 2k
- 平均合并
- 12 小时 20 分钟
- 30 天内合并 PR
- 9
描述
### Description
Currently, p4a can only build for android on Linux OS. For usage through Windows, its suggested to use either WSL2 or VirtualBox, etc. But, on reviewing the internal codebase, it seems we can support native Windows build for android without using any hacks. We have to just have the commands issued to the shell to be platform compliant. Either we can use cmd or powershell for that. The only other part that I am not fully covered up for to achieve this , is the requirements of p4a. Once, we can figure the list of dependencies that might be needed for native Windows or can port the Linux dependencies counterparts for Windows, we can safely have native Windows build for android.
To further support the claim, we can see that beehive project supports android building natively without any OS specific dependencies(beg to differ?). Also, as we are using the cmdline-tools to build for android and as these tools are also released for Windows by Android project so we can safely do the compilation on native Windows.
Moreover, this feature will help a lot of Windows user who may be unfamiliar with Linux or WSL2 and they can just as comfortably do the build without doing anything specific, just like how Android Studio does it on Windows. This will give extra ease of use and for future, we can have a cross-platform Android Studio like project using Kivy resources for build.
Also I have added the relevant feature request upstream for buildozer #kivy/buildozer/issues/1651. Together, these two shall solve the issue.
贡献指南
调研方向
首先审查 p4a 的内部 shell 命令及其对原生 Windows 的要求,检查 cmd 或 PowerShell 是否可以替代当前特定于 Linux 的执行方式。验证 Windows 上的 Android cmdline-tools 和所需依赖;当 Android 构建能够在不使用 WSL2、VirtualBox 或类似变通方案的情况下原生运行时,即视为完成。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- android, python
- 领域
- build-system, mobile
- Issue 类型
- 功能
- 难度
- 5/5
- 预计耗时
- 一周以上
- 活跃度
- 停滞
- 描述清晰度
- 需要澄清
- 新手友好度
- 25/100