0x00.实现背景
之前试过使用反射截取安卓屏幕,文章在此:点我查看;
现在试试屏幕旋转监听,具体实现参考谷歌源码:源码 1,源码 2。
0x01.实现原理(仅支持安卓 4.4 及以上,以下也没啥用)
0x02.关键代码:
public int getRotation() {
try {
Method getter = windowManager.getClass().getMethod("getDefaultDisplayRotation");
return (Integer) getter.invoke(windowManager);
}
catch (Exception e) {
e.printStackTrace();
}
try {
Method getter = windowManager.getClass().getMethod("getRotation");
return (Integer) getter.invoke(windowManager);
}
catch (Exception e) {
e.printStackTrace();
}
return 0;
}
0x03.demo 尝鲜
点此下载:RotationWatcher
运行方式:
0x04.完成,效果如下