OrientationEventListener を使用して向きを検出していますが、デフォルトでタブレットが横向きで電話が縦向きであるという問題があります。つまり、OrientationEventListener は、タブレットの縦向きの場合は 90 の値を返しますが、モバイルの縦向きの場合は 0 を返します。
私が使用しているアクティビティにはカメラがあるため、方向を変更することはできません。したがって、Orientation の値を使用して、必要に応じて画面上のいくつかの要素を再配置します。
デバイスがタブレットかどうかを検出して、それに応じて値を調整することは可能ですか? つまり、isTablet の値を計算するにはどうすればよいですか?
if(isTablet)
{
orientation += -90;
if(orientation < 0) //Check if we have gone too far back, keep the result between 0-360
{
orientation += 360;
}
}