zoukankan      html  css  js  c++  java
  • Android : Android Studio 更新至gradle 4.10.1后Variants API变化

    同步警告:

    WARNING: API 'variantOutput.getPackageApplication()' is obsolete and has been replaced with 'variant.getPackageApplicationProvider()'.
    It will be removed at the end of 2019.
    For more information, see https://d.android.com/r/tools/task-configuration-avoidance.
    To determine what is calling variantOutput.getPackageApplication(), use -Pandroid.debug.obsoleteApi=true on the command line to display a stack trace.
    Affected Modules: app

    官方网站说明:

    粗略翻译为:避免初始化和配置完成当前构建所不需要的任务,例如,如果您有多个构建变体,例如“发布”和“调试”构建变体,并且您正在构建应用程序的“调试”版本,则该插件可避免初始化和配置“发布”版本的任务你的应用。

    例如以下是根据版本和时间配置自定义apk名称方法,更新后需要将 defaultConfig.xxx  修改为 variant.xxx 

    android {
    ....
    //自定义apk名称含版本号信息
        android.applicationVariants.all { variant ->
            
         // 更新至Android Studio 3.3 gradle 4.10.1 variant.outputs.all { outputFileName = "Nanosic_OTA_${variant.versionCode}-${variant.versionName}-${releaseTime()}.apk" } //更新前 /* variant.outputs.all { output -> def fileName = "Nanosic_OTA_${defaultConfig.versionCode}-${defaultConfig.versionName}-${releaseTime()}.apk" //def fileName = outputFile.name.replace("app", "${rootProject.ext.appName}-${releaseTime()}-${defaultConfig.versionCode}-${defaultConfig.versionName}") def outputFile = output.outputFile if (outputFile != null && outputFile.name.endsWith('.apk')) { //这里修改apk文件名 outputFileName = fileName } } */ } }
    //获取编译时间 static def releaseTime() { return new Date().format("yyyy-MM-dd", TimeZone.getTimeZone("UTC")) }
  • 相关阅读:
    php使用redis锁
    php接收json数据
    计算机中的二进制、八进制、十进制、十六进制
    mysql8导入myslq5 报错
    如何用最简单的方式解释依赖注入?依赖注入是如何实现解耦的?(通俗易懂)
    【运维】Linux进阶命令简记--Linux(3)
    springboot项目在docker容器中如何优雅关闭
    springboot项目接入sap与部署到docker遇到的问题实录
    如何解决springboot参数传中文乱码
    maven如何动态统一修改版本号
  • 原文地址:https://www.cnblogs.com/blogs-of-lxl/p/10306145.html
Copyright © 2011-2022 走看看