android.hardware.faketouch
Android 3.0のSDKがリリース*1されたので、ざっくりドキュメントを読んでみた。yanzmさんが魔速で訳している*2ので、超訳はしないけど1つだけ気になる項目が。
o android.hardware.faketouch
これが宣言されると、アプリケーションはタッチスクリーンのエミュレーション(もしくはそれ以上)を提供する端末とコンパチブルであることを示す。タッチスクリーンのエミュレーションを提供する端末は、タッチスクリーン機能のサブセットのエミュレーションを行えるユーザ入力システムを持つ。そのような入力システムの一例はマウスや、画面上のカーソルを制御するリモートコントロールだ。そのような入力システムは、クリックの上下やドラッグのように基本的なタッチイベントをサポートする。しかし、faketouch端末では、ジェスチャーや弾くなどのより複雑な入力タイプは、かなり難しいか不可能だ。また、マルチタッチジェスチャーはもちろん可能ではない。
もしあなたのアプリケーションが複雑なジェスチャーを必要とせず、またエミュレートされたタッチイベントを持つ端末からあなたのアプリケーションがフィルターされたくなければ、ぜひ
にandroid.hardware.faketouchを宣言するべきだ。こうすることで、エミュレートされたタッチ入力だけを提供する端末タイプも含めて、最も数多くの端末タイプへあなたのアプリケーションが利用可能になる。
タッチスクリーン機能はfaketouch機能のスーパーセットとなるので、タッチスクリーンを備えたすべての端末もandroid.hardware.faketouchをサポートする。なので、本当にタッチスクリーンが必要な場合を除いて、faketouchを
に追加するべきだ。
ややこしく書いているけど、ようは、ジェスチャーとかマルチタッチ必須でない限り、今後出てくるfaketouch端末対応するために