いくつかのバージョンをそれぞれ別のAPIレベルで作成するにはどうすればよいですか。私はそれがこのようなものだと思うが、わからない。異なるAPIレベルのさまざまなJavaメソッド
これを行う正しい方法は何か?事前に感謝
いくつかのバージョンをそれぞれ別のAPIレベルで作成するにはどうすればよいですか。私はそれがこのようなものだと思うが、わからない。異なるAPIレベルのさまざまなJavaメソッド
これを行う正しい方法は何か?事前に感謝
は、あなたが使用することができます:参考
Integer.valueOf(android.os.Build.VERSION.SDK);
をあなたはここでチェックしたいことがあります。http://developer.android.com/reference/android/os/Build.VERSION.html#SDK
とレベルのために自分はここにリストです:http://developer.android.com/guide/topics/manifest/uses-sdk-element.html
ここにあなたがしますこの件に関する非常に良いテキストを見つける:
http://android-developers.blogspot.com/2010/07/how-to-have-your-cupcake-and-eat-it-too.html
あなたはbasicly以下のようなコードを使用する必要があります。ICE_CREAM_SANDWICHよう
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH) {
Log.i(LOG_TAG, "At least ICS version");
}
else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
Log.i(LOG_TAG, "At least HoneyComb version");
}
else {
Log.i(LOG_TAG, "legacy");
}
constの値は、静的にJavaクラスに入れているので、限り、彼らは、コンパイル時に使用可能なように、彼らは以前のAndroid SDK-Sでも利用できるようになりますユーザーの携帯電話であなたがしたくないことは、以前のsdk-sで利用できなかったメソッドを呼び出すことです。これはVFY例外で終了します。
廃止だinterface ImplBase {
void myFunc();
};
class ICSImp implements ImplBase {
public void myFunc(){}
}
class HoneyCombImp implements ImplBase {
public void myFunc(){}
}
class LegaceImp implements ImplBase {
public void myFunc(){}
}
、私が使用しているandroid.os:
が、これはそのようなコードを書くのは手間がかかりますが、なぜその最善を各アンドロイドバージョン用に別の実装を作成し、それがベースのインターフェースを考えたアクセスするためのthats .Build.VERSION.SDK_INT代わりに、ありがとうございます –