11

私のアプリは minSdkVersion=10 とターゲット 16 をサポートしています。特定のデバイスがサポートしている場合、API レベル >= 14 に固有のメソッドを呼び出したいです。実行時に実行中の OS バージョンと、より高い API メソッドを呼び出すかどうかを確認できましたが、最小 SDK バージョンを指定すると、10 より高いバージョンにのみ存在するメソッドは表示されません。minSdkVersion よりも上位の API メソッドを使用する方法はありますか?

4

3 に答える 3

12

これでデバイスの API をテストできます。

if(android.os.Build.VERSION.SDK_INT >= 14) {
    // Do something fancy
}
else {
    // Do something regular
}
于 2012-07-31T22:35:52.253 に答える
6

現在のバージョンを確認するだけでなく、メソッドに追加@SuppressLint("NewApi")して、コンパイラがそれについて怒鳴るようにする必要があります。

于 2013-04-14T15:43:47.753 に答える
3

プロジェクトのターゲットSDKは、使用されるSDKよりも低いため、より高いAPIからのメソッドは表示されず、アクセスできません。例: API 14 のメソッドを使用する場合、Android プロジェクトのターゲット SDK は、少なくとも 14 またはそれ以上の最新 (現在は 16) である必要があります。それは明らかですが、私はそれを見逃しました。その後、サムが参照したソリューションが使用されています。

于 2012-08-02T19:10:04.973 に答える