1.1概述
Android4.0,Androd4.4源码可以编译成手机模式和平板模式,讯为iTop4412 开发平台
的Android系统默认编译为平板模式。客户需要根据自己的产品设计及应用环境,切换屏幕
的显示方向,或者固定好一个显示方向,例如产品中使用不同分辨率的显示屏,或者显示屏
在产品中的固定方向发生改变等等,都需要进行屏幕旋转功能。 那么如何设置屏幕的旋转
呢?我们提供两种方式满足客户的这一需求。
1.2 安装屏幕旋转APK
迅为公司发布的 Android4.4镜像中含有 SetOrientation.apk 应用程序,该应用软件会
调整屏幕的旋转角度,如90°,180°,270°方向旋转。
运行 Set Orientation应用软件之前需要把屏幕方向由锁定状态设置为自动旋转:
从上至下滑动屏幕右上角,即可出现下拉菜单:
下图表示调整为自动旋转状态:
设置完成以后,我们运行屏幕方向设置软件 SetOrientation :
如下图所示,该软件可以设置屏幕为 Landscape模式和 Portrait模式,Landscape为屏
幕尺寸长的一方作为顶和底,Portrait为屏幕尺寸短的一方作为顶和底。也就是我们常说的
横屏显示,竖屏显示。
目前我们的屏幕是横屏显示,我们需要把屏幕设置为竖屏显示:选择 Portrait模式
也可以设置成Portrait (reserve)模式,即Portrait模式然后再旋转 180度:
屏幕旋转角度设置完成后,需要把屏幕方向状态设置为锁定状态,只有设置了锁定状态,
重新启动系统后桌面窗口会立即旋转,否则需要等待一段时间才发生旋转动作。
1.3 更改配置文件
除了使用专有的APK设置屏幕旋转角度,也可以修改Android的属性参数来实现相同的功能。
Android4.0,Android4.4版本中均有build.pro文件,该文件位于 /system/目录下面,此文件
为Android的属性配置文件,我们可以通过修改文件中的ro.sf.hwrotation选项实现屏幕的旋转:
Android4.4系统中编辑此文件之前,需要在调试串口终端中输入 su 命令,然后回车,
这样我们就具备了超级用户权限,就可以通过vi 修改build.pro文件了,否则没有权限修改,
如下图所示:
注意:迅为发布的Android4.4版本中集成了vi编辑工具,可以直接使用。
打开属性文件后,找到ro.sf.hwrotation关键选项,修改成需要的旋转角度,这里支持0°,
90°,270°,旋转,如下图所示
旋转角度修改成 270°:
修改完成后保存退出,重新启动系统:
注:Android4.4.4原生系统默认不支持 ro.sf.hwrotation 配置,我们在Android4.4.4代码中移
植了该功能,方便大家使用, Android4.0.3 原生代码支持该选项配置。
另外您希望烧写到开发平台中的镜像默认就是旋转后的效果,那么需要编辑:
device/samsung/smdk4x12/system.prop配置文件,编译Android代码,烧写system.img到开
发平台:
Android4.0,Android4.4 均为此文件,且目录路径相同。
1.4 总结
屏幕旋转的两种方式各有特点,使用屏幕旋转APK,支持0,90,180,270度四个方向
的旋转,但是需要使用软件来设定,当然第一次需要软件设定,以后系统启动后会自动进行
角度旋转,另外系统启动过程中Android的启动动画是无法进行旋转的,系统只有进入到桌
面才发生旋转。
使用配置项进行屏幕旋转时,Android系统启动过程中的动画就已经发生了旋转,进入
桌面后你是感觉不到旋转动作的,比较适合产品应用,另外配置项旋转目前暂不支持180
度,仅支持0,90,270度三个角度的旋转。
以上是屏幕旋转的两种方式,这里屏幕旋转不考虑重力传感器的因素。该功能是基于
Android系统的产品客户需求,希望此文档能够解决您在产品设计中屏幕角度旋转问题。