0

下位バージョンのAndroidデバイスでもAndroidアプリケーションを開発したいのですが、上位バージョンで利用可能な機能を犠牲にしたくありません。

AndroidManifest.xml ファイル内:

<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" />

現在のデバイスの Android レベルを取得します。

deviceLevel = android.os.Build.VERSION.SDK_INT;

次に、if ステートメントを使用して、バージョンごとに異なるコードを指定します。

if (deviceLevel >= 11) 
{
List<Camera.Size> videoSizes = parameters.getSupportedVideoSizes();
 ......
}
else 
{
 ......
}

ただし、Eclipse はエラーが存在することを示します。getSupportedVideoSizes はバージョン = 8 では使用できません。

この状況でエラーを抑える必要があると思います。どうやってするか?

4

2 に答える 2

4

@SupressLint("NewApi")アクティビティ クラスに追加する必要があります。次に、 を使用android.os.Build.VERSION.SDK_INT;してバージョン int を取得する必要があります。これは常に API 番号である必要があります (つまり、Jelly Bean 4.2 は API 17 です。比較には 17 を使用します) Build.VERSION_CODES.DESSERT_NAME_HERE。より高いレベルの API でのみ実行できるアクションを実行します。

于 2013-05-07T00:34:36.197 に答える