1.在Android Studio 编译工具 Terminal中使用命令行,进行版本发布,当输入./gradlew assembrelease
报错:'./gradlew' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
解决方法:
配置gradle环境变量即可,配置方式参考:https://jingyan.baidu.com/article/4f7d5712ce8c1f1a201927fa.html
2. manifestPlaceholders = [UMENG_CHANNEL_VALUE: "umeng"]
不太明白manifestPlaceholders的含义以及UMENG_CHANNEL_VALUE的作用是什么。
经过查找发现:manifestPlaceholders其实就是可以替换androidmanifest文件中的标签,可作为快速渠道打包替换渠道名的一种方式,也可以自定义标签用来替换需要的文本,多作为不同环境不同key的修改
参考:http://blog.csdn.net/qq_21793463/article/details/52069127
我自己在AndroidManifest.xml文件中的配置为
<meta-data android:name="MY_CHANNEL" android:value="${MY_CHANNEL}" />3.发布打包的时候出现错误:
Error:All flavors must now belong to a named flavor dimension. Learn more at https://d.android.com/r/tools/flavorDimensions-missing-error-message.html
经过查找发现:目前用到的studio版本为3.0.1,在studio 3.0以上就会出现这个错误。
解决方法:
参考:http://blog.csdn.net/syif88/article/details/75009663
http://blog.csdn.net/ncuboy045wsq/article/details/73521856
4.命令行进行版本发布的时候,报错:
Error:(49, 0) Cannot set the value of read-only property 'outputFile' for ApkVariantOutputImpl_Decorated{apkData=Main{type=MAIN, fullName=xiaomiDebug, filters=[]}}
of type com.android.build.gradle.internal.api.ApkVariantOutputImpl.
经查找发现还是因为studio 3.0版本的问题:
解决思路参考:http://blog.csdn.net/daoxiaomianzi/article/details/78364821
4.1
* What went wrong:
Execution failed for task ':tinkergradle:assembleRelease'.
> Could not get unknown property 'outputFile' for VariantOutput container of type org.gradle.api.internal.FactoryNamedDomainObjectContainer.
解决思路: http://blog.csdn.net/maosidiaoxian/article/details/41349561
5.多渠道打包发布参考:
https://www.jianshu.com/p/44d40f8e67c9
https://race604.com/android-auto-version/
https://github.com/mcxiaoke/packer-ng-plugin
https://github.com/jp1017/Android-Development-Aircraft-Carrier
6.Gradle 使用指南之基本配置
http://blog.csdn.net/heqiangflytosky/article/details/50853268