Skip to content

Comments

[Android] 新增 ARM32 支持并修复 APK 文件名大小写问题#511

Open
2822867502 wants to merge 4 commits intoQsgs-Fans:masterfrom
2822867502:master
Open

[Android] 新增 ARM32 支持并修复 APK 文件名大小写问题#511
2822867502 wants to merge 4 commits intoQsgs-Fans:masterfrom
2822867502:master

Conversation

@2822867502
Copy link


本 PR 解决以下问题:

  1. 通过 GitHub Actions 添加对 ARM32 的支持(支持arm32 #510
  2. 修复 Releases 中.apk 文件后缀大小写不一致的问题

关于 Android ARM32 支持

项目本身已具备 ARM32 的代码兼容性,但此前编译所用的预置依赖库仅有 ARM64 版本。
通过网络安装的依赖库可通过修改安装命令适配,但 lib/android/ 目录下的库文件只能手动交叉编译,较为繁琐。

为避免破坏其他目标的编译兼容性,本 PR 仅修改 Actions 流程,自动编译所需库,并未替换lib/android/ 中的原有文件(若作者认为有必要,我可进一步调整为按架构分目录存储依赖)。

具体实现:

· 新增 ARM32 专用 Actions 任务:
1.在 Actions 中自动编译libsqlite3.so liblua54.so,覆盖lib/android/ 中的对应文件
2.其余依赖均调整为 ARMv7 版本

经测试,Actions 构建出的 ARM32 包在以下环境中功能完全正常:

· API 29 纯 ARMv7 环境
· API 34 ARMv8 与 ARMv7 混合环境

此外,我认为该自动编译方案同样可集成至 ARM64 的 Actions 流程,或统一合并到 Android 打包脚本中,以简化后续维护。如作者同意,我可协助完成此改进。


关于大小写不一致问题

简单修正了 Actions 文件中三个输出文件名的后缀,使其统一为小写 .apk,未涉及其他改动。


注意:所有修改均仅测试至构建阶段,后续 Release 发布步骤因缺少签名无法完整测试,请复核。


Fix inconsistent case in Android file extensions in Release
Supports 32-bit Android Actions
@2822867502
Copy link
Author

2822867502 commented Feb 11, 2026

顺带一提,我发现编译出来的安卓包的最小SDK版本是28,可是Actions中编译libgit2时用的是29,我认为这可能出现问题,所以我在新创建的Actions任务中降低了libgit2的编译SDK的版本,但凭着能跑则不动的原则,我没有修改arm64的Actions任务

@2822867502
Copy link
Author

经过仔细的二次测试,发现32位版本似乎并不能正常使用libgit2,尝试修改sdk版本回到29也不能正常使用
具体表现为:
在同步拓展包时提示
Error: cannot pick working directory for non-bare repository that isn't……
由于现象与服务器bug很像,故第一次测试未发现

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant