MTK6572横屏调试过程

剧情设定:系统为MTK默认的系统源码,Phone模式,底部有三个虚拟按键。需求为,设置成默认横屏,设定一个合理的虚拟按键方案。

----------------------------------------------------------------------------------------------------

1.      横屏

修改转屏的角度为0,所以从效果看,旋转270是逆时针的。需要后续解决的问题:Uboot、Kernel、开关机动画需要替换成横屏的资源。

2.      重力传感器xy轴反转

一般改变默认的屏幕方向后,都是必须调整重力传感器方向的,改动如下:

3.      导航Bar看不见图标

这个是横屏后遇到的一个问题,当航Bar只看到黑条,在屏幕0/180度时点击无效,90/270度时点黑条的任何地方底部会有Glow的光晕效果和震动效果,但是键值全都是recentApp。对比正常的当航Bar,recentApp是横向布局时的第一个按键,联系到我们修改了屏幕方向,会不会跟布局方向有关呢?找到系统资源的全局定义文件,修改当航Bar的宽度,原来的是42dip改为100dip,重新编译,就可以看到真相了:导航Bar时竖向放置的。

找到问题了,我们将导航Bar布局文件中,横屏布局和竖屏布局调换,就可以正常显示了。记得将前面导航Bar的宽度还原。

4.      屏蔽导航Bar

这个修改可以有三处,选择最底层的修改方式。

5.      在导航案右侧添加4个虚拟按键(back、home、recApp、menu)

这个修改全部在SystemUI.apk中,首先修改布局文件,为状态栏添加四个按键

四个虚拟按键,除了recentApp需要发送Intent来触发,其他三个键都是直接绑定了键值,可以直接使用。下面要做的事情就是在PhoneStatusBar中实现recentApp点击动作的响应。参考平板模式下statusBar中的实现修改即可。

最后上一张效果图

Doc文档和SystemUI源码已上传,需要的朋友可以到我的资源去下载。

MTK6572横屏调试过程,布布扣,bubuko.com

时间: 2024-11-03 21:35:35

MTK6572横屏调试过程的相关文章

Android APP 调试过程中遇到的问题。

调试过过程中APP安装完启动后有的时候会异常退出,报这个错误.有的时候可以直接启动.查找不到原因.网上说把commit方法替换成commitAllowingStateLoss() 也无效. Android APP 调试过程中遇到的问题. >> android 这个答案描述的挺清楚的:http://www.goodpm.net/postreply/android/1010000007192169/AndroidAPP调试过程中遇到的问题.html

调试过程出现的错误汇总

程序调试过程中的错误意义: a.obj : error LNK2001: unresolved external symbol _print//未解决的外部符号_print即,printf少了个f啊.类似错误提示要看得懂.

追求卓越 - 整合调试过程

当前开发人员.测试人员.工程人员,在开发过程.部署过程.维护过程中需要花费大量时间调试,可能是项目一半以上的时间,调试过程就是运行程序.发现问题.定位问题.反馈问题.修改问题.提交更新的循环,运行程序和发现问题可以通过提高自动化测试的程度提高效率,反馈问题和提交更新可以通过打通网络并选择高效的项目管理中的缺陷管理模块提高效率,在这里主要讨论定位问题,在现在的通信系统中,通常一个业务的执行涉及多个硬件设备,一个硬件设备又可能涉及多个软件,一个软件又涉及多个逻辑模块,很多时候要准确定位一个问题需要从

关于VC++调试过程中的leak internal to Visual Leak Detector问题

此前,我记录一下小文,见http://blog.itpub.net/14466241/viewspace-749710/. 文章中简单记录了使用Visual Leak Detector软件侦探VC++开发中的内存漏洞问题. 但是,现在调试过程中经常出现如下提示: 网络搜索发现,这应该是Visual Leak Detector软件当前版本存在的一个BUG.现在的我编写的程序是不存在内漏的. 参考文章: http://vld.codeplex.com/discussions/280893

Android Studio 调试过程中快捷查看断点处变量值(Ctrl+Shift+I无效)?

当你在做Keymap到Eclipse后,在debug过程中,在Eclipse中我们很喜欢用Ctrl+Shift+I去查看一个运算或者调用的结果,这样用起来很方便.但是keymap到Eclipse后,你会发现这个快捷键不能使了.啥原因呢,原因我们一个个排除: 1.是否快捷键映射失败, 2.映射成功了,你看了快捷键也发现是正常的,那就再查看是否快捷键冲突. 3.如何是快捷键冲突,那解决快捷键冲突,正常来说解决了冲突后,快捷键是能正常使用的,但是你会发现即使你解决了冲突,Ctrl+Shift+I还是不

关于cefglue调试过程中打不开网页的问题

问题描述 cefglue在直接点击vs中的直接运行不调试的时候可以打开网页,但是调试过程中无法打开网页. 解决方法: 去掉工程属性中的启用visual studio承载进程 前面的勾就可以了打开网页

0xe7f001f0!?NDK调试过程,无故抛出SIGSEGV。

arm调试过程,如果抛一个SIGSEGV,地址在 0xe7f001f0 附近,原因居然是因为我在调试.当我使用n指令跳到下一行代码时,往往变成了continue指令一样地执行.还不确定地抛出SIGSEGV(addr:0xe7f00XXX),使用程序直接崩溃不能继续调试下去.查看寄存器发现的确有某个rN的寄存器被诡异地修改了.多次归纳后发现,都在调用虚函数时抛出SIGSEGV(addr:0xe7f00XXX),不论何处何种逻辑下,这个被神修改的寄存器的值都是0xe7f00XXX,在反编译逻辑中是要

关于在adb调试过程中常用的用法及adb命令

本篇主要讲解一下几种关于我们在调试过程中常用的几个adb命令及用法,adb连接的具体过程这里就不再多讲 关于怎么通过adb命令连接手机进行调试请参考 如何通过PC端连接Android设备进行adb调试 首先必须确保你正确配置了AndroidSDK(不然这里是直接打不开的,需要进入到SDK-platform-tools路径下进行adb命令),话不多说,看图 1) adb devices ( 用于查看当前adb连接的设备有哪些,这里目前是无) 2) adb connect IP地址 (用于连接And

【DPM】Deformable Part Models matlab代码在windows下的调试过程

我下载的是voc-release5 1.按照这篇文章,都操作了一遍:http://blog.csdn.net/pozen/article/details/7023742#quote 2.运行demo不成功 继续按照http://cfanz.cn/index.php?c=article&a=read&id=128978的方法修改 2.1在按这一篇运行  >> mex cascade.cpp model.cpp  时报错:  D:\PROGRA~1\MATLAB\R2012B\BI