私が持っているマニフェストで、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 を使用して実行時にそのような処理を行うことを認識しています)
最適な働き方は?
リントが機能しないのはなぜですか?
ありがとう!