尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
如何用 Android Studio 从零构建 MoneyManagerEx:JDK17 + Gradle 完整开发者构建指南
如何用 Android Studio 从零构建 MoneyManagerExJDK17 Gradle 完整开发者构建指南【免费下载链接】android-money-manager-exLocal-first personal finance app. Encrypted, self-hosted, sync across devices.项目地址: https://gitcode.com/gh_mirrors/an/android-money-manager-exMoneyManagerEx 是一款本地优先Local-first的 Android 个人财务记账应用数据库加密存储、支持自托管云盘同步、可跨设备使用。如果你想在本地跑起来、改一行代码看看效果本指南将带你用 JDK17 Gradle 在 Android Studio 中从零完成 MoneyManagerEx 的开发者构建最终得到一个可直接安装运行的 APK。一、环境准备清单开始之前请对照下面的清单检查开发环境耗时约 10 分钟组件推荐版本说明Android Studio当前稳定版官方 IDE自带 SDK 管理JDKJDK 17Android Studio 内置无需手动安装使用 embedded JDK 即可Android SDKcompileSdk 36 / minSdk 29构建时会自动下载所需组件Git任意较新版本用于拉取源码 项目官方构建建议就是三句话使用当前稳定版 Android Studio、使用内置 JDKJDK17 兼容、使用项目自带的 Gradle Wrapper。见根目录 README.md 中的 Build 章节说明。二、克隆项目源码打开终端执行以下命令克隆仓库git clone https://link.gitcode.com/i/8b509a140b44b0b431a25f159e2ceb8d cd android-money-manager-ex项目采用多模块Multi-module结构settings.gradle中声明了 3 个模块app/—— 主应用模块几乎所有业务代码都在这里money/—— 财务计算相关的 Android LibraryMMEX_Icon_Font/—— 图标字体库三、Android Studio 导入与 Gradle 同步打开 Android Studio →File → Open选择克隆下来的项目根目录首次打开时Android Studio 会自动下载 Gradle Wrapper 指定的Gradle 9.4.0版本定义在gradle/wrapper/gradle-wrapper.properties无需手动安装 Gradle等待右下角的Sync进度条走完。同步过程会拉取依赖AGP 9.1.0Android Gradle 插件、Kotlin 插件、AndroidX 组件等全部版本集中维护在gradle/libs.versions.tomlGradle 版本目录非常便于排查依赖冲突。同步完成后左侧 Project 面板应能看到app、money、MMEX_Icon_Font三个模块说明导入成功。✅四、读懂关键构建配置MoneyManagerEx 的构建行为主要由以下几个文件控制花 2 分钟了解它们之后改配置就不迷路了根目录build.gradleSDK 版本总开关ext { compileSdk 36 targetSdk 36 minSdkVersion 29 // Android 10 }即面向 Android 10 及以上设备编译目标为 Android 15API 36。app/build.gradle三种发行版 FlavorproductFlavors { fdroid { } // F-Droid 版 gplay { applicationIdSuffix .android } // Google Play 版 sync { /* 云同步版 */ buildConfigField boolean, IS_SYNC_ENABLED, true } }这就是为什么发布渠道有多个版本sync渠道会开启云同步功能对应应用的自托管同步特性默认fdroid/gplay渠道则是纯本地模式。根目录gradle.properties别忘了 Jetifierandroid.useAndroidXtrue android.enableJetifiertrue # 旧库如 Caldroid依赖老 Support Library必须开启如果你关闭 Jetifier 后出现android.support.v4相关崩溃原因就是这一行被误关了。五、一键构建并运行到设备连接 Android 10 的真机开启 USB 调试或启动模拟器建议 API 30顶部工具栏确认 Build Variant 选择fdroidDebug首次调试选 debug 类型即可点击绿色Run ▶按钮。第一次构建会耗时几分钟Gradle 配置缓存 依赖编译之后增量构建只需十几秒。运行成功后你会看到 MoneyManagerEx 的启动页接下来即可体验创建加密数据库、添加账户、记第一笔交易等完整流程。六、命令行构建 APK可选如果只想产出 APK 而不启动模拟器可用项目自带的 Gradle Wrapper./gradlew :app:assembleFdroidDebug产物位于app/build/outputs/apk/下文件名格式为ammx-5.5.9.apk版本号同样来自app/build.gradle的versionName。Windows 用户请使用gradlew.bat。七、常见问题速查现象解决办法同步报Unsupported class file major version检查 SDK Manager → GradleJDK 位置必须是 Android Studio 内置 JDK 17不要指向 JDK 8/11构建卡在下载 Gradle 分发包确认能访问services.gradle.org或使用公司代理Wrapper 只会完整下载一次运行提示INSTALL_FAILED_OLDER_SDK设备低于 Android 10minSdk 29换一台设备或 API ≥ 29 的模拟器编译报android.support相关错误确认gradle.properties中android.enableJetifiertrue未被删除内存不足OutOfMemoryErrorgradle.properties中已设-Xmx2048m机器内存紧张时可临时调低并关闭无关 IDE 窗口八、下一步熟悉代码与文档业务代码入口在app/src/main/java/com/money/下按功能划分子包账户、交易、预算、报表等数据库加密依赖sqlcipher-android定义在app/build.gradle的依赖清单中想深入了解应用概念账户、分类、预算、定时交易可阅读用户手册docs/usermanual/目录下的各章节。构建到这里就完成了 你手里的这个 APK就是一个与 F-Droid / Google Play 上发布同源、可自由修改的 MoneyManagerEx。接下来不妨试着改一个界面文案或加一个按钮体验完整的「修改 → 构建 → 安装 → 验证」开发循环。【免费下载链接】android-money-manager-exLocal-first personal finance app. Encrypted, self-hosted, sync across devices.项目地址: https://gitcode.com/gh_mirrors/an/android-money-manager-ex创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED

相关推荐

alfred-google-translate翻译历史怎么用:save_count设置与alfred-translate-history联动完整指南

alfred-google-translate翻译历史怎么用:save_count设置与alfred-translate-history联动完整指南

alfred-google-translate翻译历史怎么用:save_count设置与alfred-translate-history联动完整指南 【免费下载链接】alfred-google-translate Alfred 3 workflow - translate with google api💵🚫 项目地址: https://gitcode.com/gh_mirrors…

📅 2026/10/7 18:21:36
pySMT UNSAT Core实战:像调试Bug一样解决爱因斯坦50问(含完整代码)

pySMT UNSAT Core实战:像调试Bug一样解决爱因斯坦50问(含完整代码)

pySMT UNSAT Core实战:像调试Bug一样解决爱因斯坦50问(含完整代码) 【免费下载链接】pysmt pySMT: A library for SMT formulae manipulation and solving 项目地址: https://gitcode.com/gh_mirrors/py/pysmt pySMT 是一个 Python 库…

📅 2026/10/6 9:21:45
算法7.链式栈

算法7.链式栈

算法7.链式栈 // 07_链式栈.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。 //#include <iostream> #include <string> #include <stack> using namespace std;// 比较符号优先级的 bool Priority(char ch, char topch) {if ((ch *…

📅 2026/9/22 6:42:36
MORE NEWS

更多资讯

📰

从15.6%到71.0%:R1-Zero纯强化学习与R1多阶段训练选型

简介&#xff1a;这份PDF文档聚焦DeepSeek团队第一代推理模型DeepSeek-R1-Zero与DeepSeek-R1的研发脉络&#xff0c;面向机器学习研究者、开发者及希望提升大模型推理性能的从业者&#xff0c;回应“如何以强化学习激发语言模型推理能力”这一问题。全文围绕纯RL训练、冷启动数…

📰

物业绿化主管去上海园林景观展值得吗

去年春天&#xff0c;我在上海新国际博览中心碰到一位从合肥赶来的物业绿化主管老周。他管着六个住宅项目的绿化养护&#xff0c;手下二十来号人&#xff0c;每年最头疼的事就是&#xff1a;苗木成活率上不去、养护机械选型拿不准、业主投诉景观水景维护成本太高。他跟我说&…

📰

测试框架异常退出问题排查与防御性编程实践

1. 测试框架异常退出问题全景分析 遇到测试框架突然崩溃退出时&#xff0c;那种红色错误提示框弹出的瞬间&#xff0c;相信每个开发者都会心头一紧。这种非正常中断不仅打断了测试流程&#xff0c;更可能掩盖了真正的问题所在。根据我多年处理测试框架异常的经验&#xff0c;这…

📰

麦克风阵列音频验收标准:裸板与整机14项测试及避坑指南

简介&#xff1a;《麦克风阵列音频检查方法与标准》面向硬件研发、声学测试与质量验证人员&#xff0c;系统梳理从研发设计到整机验收的音频评测流程&#xff0c;重点解决麦克风阵列录音功能完整性、通道一致性与整机声学性能判定问题。压缩包内含1个docx文件&#xff0c;大小约…

📰

四足机器人密封舱散热:烟囱效应风井与热管导热设计

简介&#xff1a;这份PDF是一份围绕四足机器人、四轮足机器人及机器人散热结构的发明专利申请文献&#xff0c;公布号为CN117769181A&#xff0c;面向机器人整机设计、热管理与结构工程方向的研究者、工程师及学生。文献针对密闭机舱内计算单元散热差的问题&#xff0c;具体展开…

📰

mimo-v2.6-pro-ultraspeed 实测:20倍速在长上下文与工具调用中值不值

1. 当“Pro”被加上“Ultraspeed”后缀&#xff0c;它到底在卖什么第一次看到mimo-v2.6-pro-ultraspeed这个名字&#xff0c;我的反应和大多数人一样&#xff1a;又是一个堆后缀的营销命名。Pro 已经代表旗舰了&#xff0c;再加个 Ultraspeed&#xff0c;听起来像是把“快”当成…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬