私はAndroidのCamera.open()メソッドを2つの別々のAPIレベルで使用したいと考えています。 1つ目はAPIレベル7、2.1以降、2.3.3 & 2.3.4はAPIレベル9です。複数のAPIレベルをターゲットに設定するにはどうすればよいですか?
APIレベル7および8では、Camera.openメソッドは引数をとりません。 APIレベル9以上では、カメラは使用するcameraIdに整数引数を渡します。
両方のAPIレベルを同じコードでどのようにターゲティングできますか?この擬似コードに類似したもの:
Camera lCamera;
if (Platform.APILevel < 7){
lCamera.open();
}else {
lCamera.open(0);
}
絶対に受け入れます。 –
:) Cool。反射が遅すぎるので、反射があまり頻繁に実行されない場合(カメラの検索はOKです)、非常に効果的です。別の興味深い方法もありますが、どういうわけか、それほど説得力がないと分かっています...あなたはEclipseプロジェクトに最新かつ最高のandroid-all-classes jarファイルをコンパイル(またはダウンロード)できます。上のようにExceptionでラップしてください...これは非常にうまくコンパイルされますが、実行時には例外が発生します。あなたが蟻のビルドをしたいのであれば、これは余分な複雑さを増やします。 ... –
ちょっとフォローアップ... SDKの以前のバージョンで見つからないクラスを必要とするインポートステートメントについてはどうですか? –