现象
通过display.getRotation() 获取的值不对。
解决办法
通过给rotation增加一个校准来实现。
Display display = wm.getDefaultDisplay();
int rotation = display.getRotation();
// 对rotation进行校准
int screenRotation = SystemProperties.getInt("persist.screen.hwrotation", 0);
if (rotation >= screenRotation) {
rotation = rotation - screenRotation;
} else {
rotation = 4 - screenRotation + rotation;
}