考虑app.gradle包括以下内容:defaultConfig{versionName"2.1.6"}debug{debuggabletrueversionNameSuffix"-debug"}是否可以获取不带后缀的版本名?使用PackageInfopInfo=applicationContext.getPackageManager().getPackageInfo(applicationContext.getPackageName(),0);时pInfo.versionName返回2.1.6-debug有没有办法只得到2.1.6无需进行一些字符串或正则表达式匹配。谢谢!
我已经从3.1.1更新到Gradle发行版5.1.1,它涉及很多更改,包括更新androidX支持库。出于某种原因,build一直未能要求更改versionName在mergedflavor中的设置方式。我无法弄清楚我到底错过了什么,已经添加了gradle构建结果建议的代码。构建.gradlebuildscript{ext.kotlin_version='1.3.40'System.properties['com.android.build.gradle.overrideVersionCheck']='true'repositories{maven{url'https://maven.
为了改进错误报告,我希望标签android:versionName自动包含svn服务器上的修订号。任何人都知道该怎么做?谢谢` 最佳答案 尝试svn:keywords. 关于android-如何自动更新android:versionName?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/3076931/
我在LinuxUbuntu服务器上使用Jenkins构建我的Android应用程序,并使用Bazaar作为SCM。我想自动将项目的bazaar修订版ID附加到我的list文件中的Android:versionName的值。我使用ant进行构建,我有Jenkin的集市插件将revid传递给ant构建脚本,但我不知道该怎么做。 最佳答案 我终于找到了解决方案here.它是针对SVN的,但是针对Bazaar进行调优已经足够容易了...这是我的任务的样子。ModifyingAndroidmanifestwithrevision:${env.
我最近将我的androidstudio更新到2.2预览版。当我使用PackageInfo.versionName请求versionName时,它返回INSTANT_RUN而不是实际版本名称。 最佳答案 将com.android.tools.build:gradle版本降级到2.1.2对我有用。 关于android-PackageInfo.versionName在AndroidStudio2.2预览中返回INSTANT_RUN,我们在StackOverflow上找到一个类似的问题:
我想在每次发布apk时更改android:versionName。是否有任何eclipse插件或其他一些方法可以帮助它随着我的代码编译而自动更改?例如,今天是10/09/2011,我希望将AndroidManifest.xml中的值android:versionName设置为1.0.0.1009 最佳答案 对不起,我没有使用eclipse(但是使用Ant是的,请参阅this),我知道这样做可能很无聊。但你不会每分钟都发布,不是吗?已修改Ant方式,使用Antproperties明天我会尝试找到更多关于您是否需要的文档
我正在构建一个不会通过Marketplace的私有(private)应用程序。结果,我需要拉取当前版本应用(不是平台)信息,并向服务器查询是否有更新。它在模拟器上运行良好,但是当我在我的DroidX上安装签名的APK时,它返回null。这是代码:PackageInfopInfo=null;try{pInfo=getPackageManager().getPackageInfo("com.rubiconproject.expenses",PackageManager.GET_META_DATA);}catch(NameNotFoundExceptione){return;}Stringp
我迁移到Androidstudio3并使用gradle插件v3.0.0-beta6。我想重写输出.apk文件的versionName/vesionCode。我在我的Android应用程序模块的build.gradle中为gradle插件2.x使用了以下代码applicationVariants.all{variant->defflavor=variant.mergedFlavorflavor.versionName="${VERSION_NAME}"if(variant.buildType.isDebuggable()){flavor.versionCode=9999}else{fla
我正在使用以下命令使用apktoolapktooldecode"[APKPATH]"出于某种原因,解码后的androidmanifest.xml不包含属性versionCode和versionName。我知道它们在原始文件中,因为如果我打开编码文件,我可以在加密文本的中间看到属性。我需要验证版本代码是否在实现一些代码后由gradle自动更新。 最佳答案 它被保存到另一个文件中。我记得,一些扩展名为.yml。当您再次对包进行编码时,apktool命令使用此文件作为版本代码 关于androi
我正在尝试在我正在使用的CI上自动化构建过程。我可以调用curl并为其分配一些变量,例如版本代码和名称。然后CI(在我的例子中是BitriseCI)捕获它并开始发布构建。但是,在此之前,我想根据curl传递给build.gradle文件的内容设置版本代码和版本名称,然后开始构建过程。所以,我想我可以编写一个插件/任务,从命令行获取版本代码/名称,然后将其注入(inject)build.gradle文件。像./gradlewsetVersion11.0这样的命令。因此,通过从我将要编写的脚本运行此命令,我将能够运行此gradle任务,并且glob中任何地方的每个人都能够通过curl创建发