2011-03-17 8 views
2

私は、カメラを使用しているオプションの機能を持つAndroidアプリを持っています。だから私はuses-featureの階層論理?

<uses-permission android:name="android.permission.CAMERA"/> 
<uses-permission android:name="android.permission.FLASHLIGHT"/> 

私のマニフェストにあります。アプリは、私が

<uses-feature android:name="android.hardware.camera" android:required="false"/> 

を持っている機能がないだけで正常に動作しているので今興味深いのは、Motodev Studioアプリのバリデータは、私は必要な値であると考えているだろうが、私は

<uses-feature android:name="android.hardware.camera.flash" android:required="false"/> 
<uses-feature android:name="android.hardware.camera.autofocus" android:required="false"/> 

を追加する必要があることを報告していることです継承されました。私はそれについての文書を見つけることができませんので、私はちょうど良い尺度のためにそれを置くべきですか?

答えて

1

あなたが今見たことがあるように、階層は、より具体的なものから最小のものまでです。これは、android.hardware.camera.autofocusを指定すると、android.hardware.cameraが暗黙指定されていることを意味します。逆ではありません。本当にオートフォーカスカメラが必要な場合は、それを指定する必要があります。さもなければ、あなたはどのようなカメラを持っていても、それはAFでもフラッシュでもないかもしれません。

-e

+0

私は、より具体的に必要なfalseを引き継ぐことが理にかなっていると思います。しかし、ある意味では私は理解していません。おそらく継承がまったくないのが最も簡単かもしれません。いずれにしても、ソースとは別にドキュメンテーションがないようです。 –

+0

ドキュメントを修正してください。私にそれを説明した人は、それらがその構成を表すさまざまなハードウェアを持っていて、そのようなアクセス権を明示的に実行するサンプルを書いていただけなので、 –