Android studio更新到3.0后问题解决

问题1:
自定义打包问题提示

Cannot set the value of read-only property ‘outputFile’ for ApkVariantOutputImpl_Decorated{apkData=Main{type=MAIN, fullName=debug, filters=[]}} of type com.android.build.gradle.internal.api.ApkVariantOutputImpl

解决:
之前:

variant.outputs.each { output ->
                    def outputFile = output.outputFile
                    if (outputFile != null && outputFile.name.endsWith('.apk')) {
                        if ("release".equals(variant.buildType.name)) {
                            fileName = "arbooks_${defaultConfig.versionName}_${releaseTime()}_release.apk"
                        } else {
                            fileName = "arbooks_${defaultConfig.versionName}_${releaseTime()}_beta.apk"
                        }
                        output.outputFile = new File(outputFile.parent, fileName)
                    }
                }

之后:

 variant.outputs.all {
                    if ("release".equals(variant.buildType.name)) {
                        fileName = "appstore_${defaultConfig.versionName}_${releaseTime()}_release.apk"
                    } else {
                        fileName = "appstore_${defaultConfig.versionName}_${releaseTime()}_beta.apk"
                    }
                    outputFileName = fileName
                }

问题2:

Error:java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details

解决:
在在gradle.properties中关闭APPT2 编译

android.enableAapt2=false 

问题3:

Error:All flavors must now belong to a named flavor dimension. Learn more at https://d.android.com

解决:

 //版本名后面添加一句话,意思就是flavor dimension 它的维度就是该版本号,这样维度就是都是统一的了
    flavorDimensions "versionCode"

这里写图片描述
之前的时候修改的时后不会全部改,现在会保持一致是release就都是release,debug就都是debug
可以百度看下解释,在此我只是记录下解决办法

猜你喜欢

转载自blog.csdn.net/cao126197103/article/details/78460260
今日推荐