android出现段错误时的查找方法,例如出现log:2196 01-02 12:49:01.090 F/libc ( 1309): Fatal signal 11 (SIGSEGV) at 0x00000000 (code=1), thread 1388 (SurfaceFlinger)21...
分类:
移动开发 时间:
2015-08-17 17:07:41
阅读次数:
197
由于《深入理解Android 卷一》和《深入理解Android卷二》不再出版,而知识的传播不应该因为纸质媒介的问题而中断,所以我将在CSDN博客中全文转发这两本书的全部内容。第8章 深入理解Surface系统本章主要内容· 详细分析一个Activity的显示过程。· 详细分析Surface。· 详细分析SurfaceFlinger。本章涉及的源代码文件名及位置:· ActivityThre...
分类:
移动开发 时间:
2015-08-02 18:24:19
阅读次数:
358
1. 启动动画在执行init启动脚本中到surface flinger启动完成后,开始执行启动动画(bootanimation)之间。(启动动画在cupcake版本还只是surfaceflinger的一个线程,到donut上已经升级到和surface flinger一样的进程了)。启动动画默认是调用函数load_565rle_image在屏幕上显示一个叫 initlogo.rle的一个rgb565格式的图片,一般我们的系统上都没有这张图,可以按下述方法做一个:首先需要准备一张图片,最好是PNG的(andro...
分类:
移动开发 时间:
2015-07-07 13:06:59
阅读次数:
235
引自:http://blog.csdn.net/luoshengyang/article/details/7867340在前面一篇文章中,我们分析了Android应用程序与SurfaceFlinger服务的连接过程。Android应用程序成功连接上SurfaceFlinger服务之后,还需要一块匿名...
分类:
移动开发 时间:
2015-06-25 19:15:41
阅读次数:
295
转自:http://blog.csdn.net/luoshengyang/article/details/7857163前文在描述Android应用程序和SurfaceFlinger服务的关系时提到,每一个有UI的Android应用程序都需要与SurfaceFlinger服务建立一个连接,以便可以通...
分类:
移动开发 时间:
2015-06-23 19:31:46
阅读次数:
212
转自:http://blog.csdn.net/luoshengyang/article/details/7846923SurfaceFlinger服务:负责绘制Android应用程序的UI,SurfaceFlinger服务运行在Android系统的System进程中,它负责管理Android系统的...
分类:
移动开发 时间:
2015-06-23 17:46:22
阅读次数:
168
dumpsys命令可以显示手机中所有应用程序的信息,并且也会给出现在手机的状态。直接执行adb shell dumpsys KEY会显示以下所有信息。KEY的可选名称SurfaceFlinger, accessibility, account, activity, alarm, appwidget,...
分类:
移动开发 时间:
2015-06-16 12:37:58
阅读次数:
139
在构建功能,修复bug,整理代码之后,你应该花一些时间来关注应用的性能。应用画像素和执行操作的速度和流畅度影响了用户体验。
Android应用运行在一个共享资源的环境中,你的应用的性能会被与其交互的系统资源的效率所影响。应用也运行在一个多线程的环境中,与其它拥有线程的进程争夺资源,可能会引起很难诊断的性能问题。
Systrace工具允许你收集和审查应用和Andro...
分类:
其他好文 时间:
2015-03-20 22:09:15
阅读次数:
4723
软件环境:android4.4
硬件平台:marvell
之前调试过在android4.0上将屏幕开机旋转90度,找到了契合点,调整起来还是相对简单,只需设置一个名称为ro.sf.hwrotation = 90即可,android的surface系统显示的时候会读取该系统属性的值,从而将显示界面旋转,但是android4.4的surfaceflinger机制做了调整,自始至终没有发...
分类:
移动开发 时间:
2015-02-26 16:44:50
阅读次数:
611
其实与android开机动画启动流程基本一模一样。除了文件换了位置,就是添加了一些函数。
内核起来后会启动第一个进程,即init进程。
init进程会根据init.rc配置启动surfaceflinger进程。
service surfaceflinger /system/bin/surfaceflinger
class mai...
分类:
移动开发 时间:
2015-01-27 20:23:34
阅读次数:
1301