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//output.outputFile具体实现里应该调用了variantOutput.getPackageApplication()  看了一些博客暂时可以不用管。后续应该会有库升级兼容这个问题。也可以升级,避开会调用output            if (outputFile != null && outputFile.name.endsWith('.apk')) {                //这里修改apk文件名                outputFileName = fileName            }        }        */    }}//获取编译时间static def releaseTime() {    return new Date().format("yyyy-MM-dd", TimeZone.getTimeZone("UTC"))}

转自https://www.cnblogs.com/blogs-of-lxl/p/10306145.html

更多相关文章

  1. Flutter实现android应用内版本更新功能
  2. Android获取本机信息(随时更新)
  3. Android(安卓)Spinner(级联 天气预报)
  4. Android(安卓)SDK下载和更新失败的解决方法
  5. 解决android sdk 无法更新
  6. Android(安卓)Q Beta 6 终极测试版发布!
  7. Android线程模型解析(包括UI的更新)
  8. android listview局部刷新和模拟应用下载
  9. Android源码分析之WindowManager.LayoutParams属性更新过程

随机推荐

  1. Android MediaPlayer音乐播放
  2. Android中使用Gson解析JSON数据
  3. Android原生弹框的工具类AlertDialog,Dial
  4. Android zxing change orientation to po
  5. Git 一些关于 Git、Github 的学习资源
  6. 录音11
  7. android requestFocus的使用
  8. Android SyncManager 实现
  9. Android Audio and Video
  10. Android—锁定横屏遇到的问题