首页 > 代码库 > 【分享】迅为iTOP4412开发板-Android系统屏幕旋转设置

【分享】迅为iTOP4412开发板-Android系统屏幕旋转设置


1.1概述

Android4.0Androd4.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.0Android4.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.0Android4.4 均为此文件,且文件夹路径同样。

 

1.4 总结

屏幕旋转的两种方式各有特点。使用屏幕旋转APK,支持090180270度四个方向

的旋转。可是须要使用软件来设定,当然第一次须要软件设定。以后系统启动后会自己主动进行

角度旋转。另外系统启动过程中Android的启动动画是无法进行旋转的,系统仅仅有进入到桌

面才发生旋转。

使用配置项进行屏幕旋转时,Android系统启动过程中的动画就已经发生了旋转,进入

桌面后你是感觉不到旋转动作的,比較适合产品应用,另外配置项旋转眼下暂不支持180

度,仅支持090270度三个角度的旋转。

以上是屏幕旋转的两种方式,这里屏幕旋转不考虑重力传感器的因素。该功能是基于

Android系统的产品客户需求,希望此文档可以解决您在产品设计中屏幕角度旋转问题。

 

【分享】迅为iTOP4412开发板-Android系统屏幕旋转设置