Build警告:请使用-Xlint:deprecation重新编译

QuibblerQuibbler 2020-03-12 约 3 分钟 2473 次阅读

-Xlint:deprecation重新编译

Build的时候打开了Build输出窗口,平时没注意看,没想到看到一句警告信息,虽然都是正常编译通过:

        注: 某些输入文件使用或覆盖了已过时的 API。

        注: 有关详细信息, 请使用 -Xlint:deprecation 重新编译。

        注: ...\PercentLayoutActivity.java使用了未经检查或不安全的操作。

        注: 有关详细信息, 请使用 -Xlint:unchecked 重新编译。

参考网上的资料,在整个项目或者单独模块的build.gradle中添加:

allprojects {
        gradle.projectsEvaluated {
            tasks.withType(JavaCompile) {
                options.compilerArgs << "-Xlint:unchecked" << "-Xlint:deprecation"
            }
        }
    }

还以为这个配置是让之前的那两个警告消失呢。没想到弄出一大堆,把所有过时的,未检查的方法调用都揪出来:

        

影响不大,也能运行。也有解决办法:

①把API都换成最新的,毕竟现在用的都已经“过时”了

②在警告的方法全部加上@SuppressWarnings("unchecked")、@SuppressWarnings("deprecation")之类的注解

③还是把前面的build.gradle中加上的配置去掉吧,这种Java编译选项过于“严格”

参考资料:

        Android Studio编译OsmAnd出现警告:GeoPointParserUtil.java使用或覆盖了已过时的 API

相关推荐

获取系统SDK版本、判断手机ROM
精选Code

获取系统SDK版本、判断手机ROM

Build获取系统SDK版本Android中部分API的使用,需要在特定的SDK版本之后才能使用,因此在兼容老版本SDK的时候,经常需要判断API的版本。各种Android版本的对应关系参考《Android各版本对应的SDK版本》判断手机ROM有时候需要判断手机系统的ROM,检测ROM是MIUI、EMUI还是Flyme,可以使用getprop命令,去系统build.prop文件(关于build.p

4.3k
AndroidStudio中各种中文乱码问题
精选Code

AndroidStudio中各种中文乱码问题

AndroidStudio中各种中文乱码问题1、编译Java错误信息乱码在出现这个Annotation processors must be explicitly declared now...问题的时候,正好也发现AndroidStudio Build Output错误信息都乱码。经常遇到各种问题,习惯了,现在遇到的问题,都是以后的答案。 1.1、修改项目build.gradle(无效)在整个p

2.8k
Function Calling 详解:让大模型调用你的函数
精选Code

Function Calling 详解:让大模型调用你的函数

问大模型“北京今天多少度”,它只能用训练数据里的旧知识猜,或者老实承认不知道。但如果告诉它“我这里有个查天气的接口”,它会说:“帮我调用 get_weather,城市参数填北京。”你的程序执行调用,把结果递回去,它再组织成一句自然的回答。Function Calling(函数调用)让模型从“只会聊天”进化为“会办事”——它是大模型连接外部世界的第一块基石,也是一切 Agent 系统的地基。本文按“…

108