Android 格式化字符串时gradle插件lint错误

Android 格式化字符串时gradle插件lint错误,android,android-gradle-plugin,lint,Android,Android Gradle Plugin,Lint,我在下面有一个string res和kotlin数据类: ¥%1$.2f 在升级到AGP 3.1.0后运行/gradlew lint时,出现以下错误 Error: Wrong argument type for formatting argument '#1' in amount_format: conversion is 'f', received <ErrorType> (argument #2 in method call) [StringFormatMatches]

我在下面有一个string res和kotlin数据类:

¥%1$.2f

在升级到AGP 3.1.0后运行
/gradlew lint
时,出现以下错误

Error: Wrong argument type for formatting argument '#1' in 
amount_format: conversion is 'f', received <ErrorType> (argument #2 in 
method call) [StringFormatMatches]
        applicationContext.getString(R.string.amount_format, it.total))
错误:中格式化参数“#1”的参数类型错误
金额格式:转换为“f”,已收到(参数为
方法调用)[StringFormatMatches]
applicationContext.getString(R.string.amount\u格式,it.total))

但是AGP3.0.1中没有错误。

我也遇到了同样的问题。声明类型为solve my problem的显式局部变量

在您的情况下,您是否可以尝试:

val-total:Double=it.total
applicationContext.getString(R.string.amount\u格式,总计)
我认为这是AGP中的一个错误

这是AGP中的一个错误-

它在4.1.0-8中固定


目前最“稳定”的版本是4.1.0-rc03。这仍然是Android Gradle Plugin 3.6.2中的一个漏洞,这个解决方案仍然有效。这仍然是Android Gradle Plugin 4.0.1中的一个漏洞,这个解决方案仍然有效
Error: Wrong argument type for formatting argument '#1' in 
amount_format: conversion is 'f', received <ErrorType> (argument #2 in 
method call) [StringFormatMatches]
        applicationContext.getString(R.string.amount_format, it.total))