问题描述
注释@RequiresApi
对于要求仅在给定的API级别或更高级别上调用带注释的元素很有帮助。但是,似乎没有相应的注释要求仅在给定的API或更低的API上调用被注释的元素。
例如,给出类似以下内容的
:@RequiresMaxApi(28) // or @DeprecatedSinceAndroid(29)
fun doSomethingWithExternalStorage() {
val dir = Environment.getExternalStorageDirectory() // This is deprecated in API 29
// ...
}
从不包含如下检查符的代码中调用doSomethingWithExternalStorage()
:
if (VERSION.SDK_INT < 29) {
doSomethingWithExternalStorage()
}
如果不进行上述API检查,则doSomethingWithExternalStorage()
会显示棉绒错误/警告,类似于@RequiresApi
那样。
据我了解,这也类似于@DeprecatedSinceKotlin
的工作方式。
是否存在满足这些要求的注释,或者还有另一种方式来获得所需的结果?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)