我针对 Android 4.2 (API 17) 进行编译,在我的清单中我有:
<uses-sdk android:minSdkVersion="8" android:targetSdkVersion="10"/>
在我使用的代码中:
String first = sdf.format(new Date(context.getPackageManager().getPackageInfo(context.getPackageName(), 0).firstInstallTime));
字段 firstInstallTime 是在 API 9 中引入的。
Lint 没有警告我,即该字段在 API 8 中无效。我缺少什么,应该如何检测到这一点?
如果我针对 Android 2.2 (API 8) 进行编译,我会发现由于使用了新功能 (> API 8) 而导致的错误和一堆额外的错误,并且项目将无法编译。
(我知道在运行时处理此类事情,例如 Build.VERSION.SDK_INT)
最好的工作方式是什么?
为什么 lint 不起作用?
谢谢!