ANDroid の API 8.0 以降、TYPE_ORIENTATION が非推奨になったのはなぜですか? 日食には十字架がありますが、コードは完全に正常に動作します。
3 に答える
センサーに関する Google I/O 2012 カンファレンス: http://youtu.be/Q0V_ld7iNw4?t=23m23s 23 分 23 秒で、タブレットやスマートフォンなどのさまざまなデバイスでは、デフォルトの向きがタブレットでは横向き、ハンドセットでは縦向きです。コーダーがこれを認識していない場合、これらの環境で、またはデバイスが 45 度回転したときに、デバイスの動作が異なります。最初に SensorManager.getOrientation() を使用してデバイスのデフォルトの向きを取得し、それに応じてセンサーの計算を実行することをお勧めします。
減価償却されたコードは引き続き動作しますが、将来の API で動作することは保証されていません。それらは、他のコードと一緒に、または全体として、より効果的に機能する (そしてそのように動作する必要がある) コードによって減価償却されます。本当に使用する必要がない限り、減価償却されたコードは避けるべきです。
タブレットは通常、以前のデフォルトの向きとは異なるためです。(これは縦長でした。つまり、通常のように持ったときに画面が幅よりも高かったことを意味します。タブレットは、デフォルトで画面が高さよりも幅が広いことを意味します。)
これは、より良いメカニズムを見つける必要があることを意味しますandroid.view.Display.getOrientation()
。
詳細については、このブログ投稿を参照してください。
Deprecated
「これはより良いものに置き換えられました。今のところはまだ機能しますが、将来機能しなくなる可能性があるため、新しい代替品を探す必要があります」という意味で、コードが「完全に正常に動作する」理由を説明しています。何年も動作する (または次のリリースで動作しなくなる) 可能性があるため、警告が表示されます。