我可以在不涉及 gradle 的情况下对 Android 应用程序进行版本控制吗?

Posted

技术标签:

【中文标题】我可以在不涉及 gradle 的情况下对 Android 应用程序进行版本控制吗?【英文标题】:Can I version an Android app without involving gradle? 【发布时间】:2016-10-14 08:56:43 【问题描述】:

我在android 上有一个QtApp,它使用ant 构建。这工作正常。

但是 ----> 要定期在 google Playstore 上更新我的应用,我需要增加应用的版本号。我发现 gradle 有一个很好的方法来增加版本号。但我看到 gradle 引入了许多其他的复杂性。我想在 ant 工作时保持这个简单。

难道没有一种简单的方法可以在不使用 gradle 的情况下使用 ant 增加版本号吗?

我真的应该考虑从 ant 切换到 gradle 吗?在 android 上使用 gradle 有很多强有力的理由吗?

【问题讨论】:

gradle这么难怎么办?所有 Android 库都可以使用 gradle 轻松获取。版本控制很简单。那么使用它有什么不好呢?为什么不使用官方的 IDE Android Studio? @Felix。因为我的应用程序是使用 Qt 构建的。因此,我正在使用 QtCreator。使用 Qt ant 是默认设置。使用 gradle,我必须输入 gradle wrapper、wrapper.properties、build.gradle 并在 sr/main 中构造代码。我明白了这一切。还有一个 version.properties 并让版本控制工作。现在我的应用程序正在使用 gradle 构建一个 apk。但是,我在我的应用程序中使用静态 C++ 库,默认情况下 gradle 不会拾取:因此应用程序崩溃。我也会解决这个问题。但是所有这些工作只是为了让版本控制继续下去??因此提出这个问题来检查它是否真的值得。 简单地说:不要使用 Qt。 Qt 适用于桌面应用程序,但没有人会更喜欢 Qt 而不是 Android Studio。 @NelsonP 正如 Felix 在我的回答下面写给你的那样,你不会通过使用 gradle 来实现自动版本控制(默认情况下),所以就保持原样。但请记住,您可能应该从使用 Android Studio 开始的新项目才能使用最新的 android ide 功能。 【参考方案1】:
    您可以在manifest directly 中设置versionCodeversionName。经过 gradle 做同样事情的方式,它只是将你的清单与 根据build.gradle文件生成附加字段 你应该明确地使用gradle,它与ant相比有很多特性。 Android Studio 完全支持 gradle,它比 ant 更可定制、更灵活。您可以轻松地将项目转移到您的团队中,但是对于 ant,这可能会导致依赖项冲突带来很多麻烦。因此,动态加载依赖项是一个 gradle 功能,它有很大帮助。我没有写更多,因为你可以自己检查所有的gradle特性。我刚刚给了你一个理事会

【讨论】:

我的清单文件中已经有 versionCodeversionName。但是如何在不使用 gradle 的情况下在每次构建时自动增加它?蚂蚁不可能吗? 即使在 Android Studio 中使用 gradle,您也必须手动增加它。这很好。您不想在每次构建项目时都增加它。 好的。感谢您的解释。在 android 项目构建中自动增加版本代码的最佳方法是什么?有什么建议吗?

以上是关于我可以在不涉及 gradle 的情况下对 Android 应用程序进行版本控制吗?的主要内容,如果未能解决你的问题,请参考以下文章

我可以在不重新构建的情况下对 Maven 构建中的文件进行更改吗?

我可以在不创建实体类的情况下对大型 sql 使用休眠命名查询吗?

如何在不考虑最后一个空白行的情况下对 jqGrid 进行排序

是否可以在不使用 SQL 连接的情况下对不同年份进行每周比较?

如何在不使用乘法的情况下对数字进行平方?

在不循环 c++ 的情况下对 2D 数组进行分区