
Android
文章平均质量分 63
SimbaYu7
这个作者很懒,什么都没留下…
展开
-
Android自动化测试初探(三): 架构实现
Android自动化测试初探(三): 架构实现发布时间: 2010-6-21 15:57 作者: roger_ge(优快云Blog) 来源: 51Testing软件测试网采编字体: 小 中 大 | 上一篇 下一篇 | 打印 | 我要投稿 | 推荐标签: Android android 软件测试技术 自动化测试 前两节讲了用Androi转载 2011-12-16 13:11:56 · 702 阅读 · 0 评论 -
自己编译Android gdbserver(解决运行 gdbserver时 Segmentation fault 问题)
一、引言 使用Android 预装 gdbserver 调试 动态库时出现,Segmentation fault错误。不得不使用现有编译链重新编译一份gdbserver。多谢Android - How-to Rebuild gdbserver这篇文章,参考这篇文章我的解决过程如下。 这里要强调一点:下面编译sysroot时sysroot的目标路径,和编译gd原创 2012-02-02 07:58:52 · 6571 阅读 · 1 评论 -
Android property系统分析
Files:android_2.3/bionic/libc/include/sys/_system_properties.handroid_2.3/system/core/init/init.candroid_2.3/system/core/init/property_service.candroid_2.3/system/core/libcutils/properties.c------原创 2011-12-30 21:51:00 · 1476 阅读 · 0 评论 -
Android 如何获取摄像头所支持的所有分辨率
Camera camera = Camera.open();Parameters parameters = camera.getParameters();List supportedPreviewSizes = parameters.getSupportedPreviewSizes();List supportedPictureSizes = parameters.getSupp原创 2011-12-30 17:10:26 · 7244 阅读 · 2 评论 -
用 Eclipse + GDB调试Android中C/C++程序
一、前期准备1、编译通过的Android源代码(我是Android 2.3)2、安装了CDT的Eclipse3、重新编译Android gdbserver(非必须) 因手头Android 2.3源码编译后的版本执行gdbserver时报错:Segmentation fault,不得不重新编译gdbserver。参考博文:自己编译Androi原创 2012-02-11 09:57:51 · 3392 阅读 · 0 评论 -
用GDB调试Android中C/C++程序(命令行)
一、编译Android gdbserver(非必须) 因手头Android 2.3源码编译后的版本执行gdbserver时报错:Segmentation fault,不得不重新编译gdbserver。1、编译gdbserver编译过程参考博文:自己编译Android gdbserver(解决运行 gdbserver时 Segmentation fault 问题原创 2012-02-10 20:16:09 · 2181 阅读 · 0 评论 -
onInterceptTouchEvent和onTouchEvent调用时序
onInterceptTouchEvent()是ViewGroup的一个方法,目的是在系统向该ViewGroup及其各个childView触发onTouchEvent()之前对相关事件进行一次拦截,Android这么设计的想法也很好理解,由于ViewGroup会包含若干childView,因此需要能够统一监控各种touch事件的机会,因此纯粹的不能包含子view的控件是没有这个方法的,如Linea转载 2012-02-14 09:44:41 · 638 阅读 · 0 评论 -
C/C++ 获取Linux线程ID与进程ID
#include LOGI(" TID: %d, PID: %d", code, syscall(__NR_gettid), syscall(__NR_getpid);LOGI(" TID: %d, PID: %d", code, syscall(224), syscall(20);-----参考:http://my.huhoo.net/archives/2009/10/linuxi原创 2012-03-02 12:39:14 · 6415 阅读 · 0 评论 -
Android display架构分析
Android display架构分析(一)http://hi.baidu.com/leowenj/blog/item/429c2dd6ac1480c851da4b95.html高通7系列硬件架构分析如上图,高通7系列 Display的硬件部分主要由下面几个部分组成:A、MDP高通MSM7200A内部模块,主要负责显示数据的转换和部分图像处理功能理,转载 2012-03-16 16:58:19 · 845 阅读 · 0 评论 -
Android 2.3 ListView OnScrollListener.SCROLL_STATE_IDLE 状态偶尔未正常通知已注册的OnScrollListener
分析源码,初步断定原因:当ListView滚动到最底部(最顶部)时,触发了2.3新引入的视觉特效。这部分逻辑里看到了特效相关的代码,但却没找到处理SCROLL_STATE 的相关代码。大胆地修改了这部分代码,SCROLL_STATE每次都能正确被通知。但其他负面影响尚不确定,毕竟4700行代码的AbsListView.java没有去仔细研究过,心里没底。能稍微支撑下这个解决方法原创 2011-12-04 11:30:05 · 6055 阅读 · 0 评论 -
Android - How-to Rebuild gdbserver
Android - How-to Rebuild gdbserverThe gdbserver provided in Android releases is statically linked to Bionic libraries like libc and libthread_db. When there are large changes to bionic, it wil转载 2012-02-02 08:00:27 · 1228 阅读 · 0 评论 -
Android build gdbserver
目前android2.2 和android2.3上的prebuilt gdbserver一执行就会报错segmentfault,prebuilt的gdbserver是静态编译的,这样做是为了让gdb能跨android的各个版本使用,但这个做法并没有考虑到kernel和libc的多样性。所以就出现了segment fault。 从android issue上看到这样的解决办法,具体做法就从gi转载 2012-02-01 19:50:46 · 1689 阅读 · 0 评论 -
简单介绍如何应用DDMS协助开发Android Apps
DDMS 的全称是Dalvik Debug Monitor Service,它为我们提供例如:为测试设备截屏,针对特定的进程查看正在运行的线程以及堆信息、Logcat、广播状态信息、模拟电话呼叫、接收SMS、虚拟地理坐标等等。DDMS 工具存放在SDK -tools/路径下,可以直接双击ddms.bat运行,也可以通过terminal/console(CLS)输入ddms(在Mac或者Li转载 2012-01-11 08:26:16 · 908 阅读 · 0 评论 -
Android自动化测试初探(五): 再述模拟键盘鼠标事件(adb shell 实现)
Android自动化测试初探(五): 再述模拟键盘鼠标事件(adb shell 实现)发布时间: 2010-6-22 10:55 作者: roger_ge(优快云Blog) 来源: 51Testing软件测试网采编字体: 小 中 大 | 上一篇 下一篇 | 打印 | 我要投稿 命令格式2:adb shell sendevent [de转载 2011-12-16 13:13:31 · 931 阅读 · 0 评论 -
理解kcm文件的意义
理解kcm文件的意义view plainprint?# keycode display number base caps fn caps_fn A 'A' '转载 2011-12-16 12:42:20 · 1353 阅读 · 0 评论 -
Android面面观——Android事件处理下(按键、触摸屏和滚动球的一些实现细节)
对于按键事件,调用mDevices[i]->layoutMap->map进行映射。映射实际是由 KeyLayoutMap::map完成的,KeyLayoutMap类里读取配置文件qwerty.kl,由配置 文件 qwerty.kl 决定键值的映射关系。你可以通过修 改./development/emulator/keymaps/qwerty.kl来改变键值的映射关系。 JNI 函数 在转载 2011-12-16 12:43:44 · 695 阅读 · 0 评论 -
Android自动化测试初探(一): 捕获Activity上的Element
Android自动化测试初探(一): 捕获Activity上的Element发布时间: 2010-6-21 12:07 作者: roger_ge(优快云Blog) 来源: 51Testing软件测试网采编字体: 小 中 大 | 上一篇 下一篇 | 打印 | 我要投稿 | 推荐标签: Android 软件测试技术 测试工具 自动化测试第一转载 2011-12-16 13:06:13 · 747 阅读 · 0 评论 -
Android自动化测试初探(四): 模拟键盘鼠标事件(Socket+Instrumentation实现)
Android自动化测试初探(四): 模拟键盘鼠标事件(Socket+Instrumentation实现)发布时间: 2010-6-21 15:59 作者: roger_ge(优快云Blog) 来源: 51Testing软件测试网采编字体: 小 中 大 | 上一篇 下一篇 | 打印 | 我要投稿 | 推荐标签: Android android 软件转载 2011-12-16 13:12:37 · 1075 阅读 · 0 评论 -
Android 2.3 input输入事件处理
linux内核提供了一个Input子系统来实现的,Input子系统会在/dev/input/路径下创建我们硬件输入设备的节点,一般情况下在我们的手机中这些节点是以eventXX来命名的,如event0,event1等等,可以利用EVIOCGNAME获取此事件结点名称。这就是android中对于input事件处理数据的来源点,至于驱动写入数据这块就不说了。首先,简而言之的介绍一下androi转载 2011-12-16 16:10:36 · 1230 阅读 · 0 评论 -
分析方法论探讨
分析方法论探讨之设计意图 为什么要研究Android,是因为它够庞大,它够复杂,他激起了我作为一个程序员的内心的渴望,渴望理解这种复杂性。我研究的对象是作为手机开发平台的Android软件系统部分,而不是Dalvik虚拟机本身。 作为一个从其他平台装接过来的程序员,要从事Andoid平台系统开发,我的关于手机平台上积累的知识已经不能满足需要了,And转载 2012-01-08 10:57:07 · 664 阅读 · 0 评论 -
Android Binder设计与实现 – 设计篇
关键词Binder Android IPC Linux 内核 驱动摘要Binder是Android系统进程间通信(IPC)方式之一。Linux已经拥有管道,system V IPC,socket等IPC手段,却还要倚赖Binder来实现进程间通信,说明Binder具有无可比拟的优势。深入了解Binder并将之与传统IPC做对比有助于我们深入领会进程间通信的实现和性能优化。本转载 2012-01-08 16:47:43 · 642 阅读 · 0 评论 -
android的binder机制研究(C++部分)
(一) 概述 android的binder机制提供一种进程间通信的方法,使一个进程可以以类似远程过程调用的形式调用另一个进程所提供的功能。binder机制在Java环境和C/C++环境都有提供。 android的代码中,与C/C++的binder包括一些类型和接口的定义和实现,相关的代码在下面这几个文件中: frameworks\base\include转载 2011-11-02 08:58:45 · 691 阅读 · 0 评论 -
Android Pmem相关介绍
基本原理Android Pmem是为了实现共享大尺寸连续物理内存而开发的一种机制,该机制对dsp,gpu等部件非常有用。Pmem相当于把系统内存划分出一部分单独管理,即不被linux mm管理,实际上linux mm根本看不到这段内存。Pmem与Ashmem的区别Pmem和Ashmem都通过mmap来实现共享内存,其区别在于Pmem的共享区域是一段连续的物理内存,而Ashmem的共享区转载 2012-03-18 09:26:26 · 1155 阅读 · 0 评论 -
Android Display System --- Surface Flinger
Android Display System --- Surface Flinger SurfaceFlinger 是Android multimedia 的一个部分,在Android 的实现中它是一个service ,提供系统 范围内的surface composer 功能,它能够将各种应用 程序的2D 、3D surface 进行组合。在具体讲SurfaceFlinger 之前,我转载 2012-03-18 12:02:58 · 1196 阅读 · 0 评论 -
JNI回调静态方法与非静态方法的区别
jclass clazz = NULL;JNIEnv* env = NULL;//1、JNI回调静态方法: 不需要对象实例,只需要拿到class即可void jniCallUnStaticMethod(){getJNIEnv(&env);clazz = env->FindClass("com.test.Test");jmethodID method = en原创 2012-06-25 16:10:14 · 2314 阅读 · 0 评论 -
Getting a warning containing "too many libraries when loading *.so"
Bionic imposes a hard limit on the number of shared objects you can load at run time. There are a few ways to work around this issue:If you're not using a huge pipeline that actually requires to l转载 2012-07-31 17:57:50 · 1363 阅读 · 0 评论 -
【Android布局】在程序中设置android:gravity 和 android:layout_Gravity属性
在进行UI布局的时候,可能经常会用到 android:gravity 和 android:layout_Gravity 这两个属性。 关于这两个属性的区别,网上已经有很多人进行了说明,这边再简单说一下。 (资料来自网络) LinearLayout有两个非常相似的属性:android:gravity与android:layo转载 2012-10-21 10:18:09 · 657 阅读 · 0 评论 -
Android getevent/senevent
getevent&sendevent 是android系统下的一个工具,可以模拟多种按键和触屏操作,产生的是raw event,raw event经过event hub处理产生最终的gesture事件。 === getevent ===getevent 监控当前的事件,鼠标事件,按键事件,拖动滑动等 dd device 1: /dev/input/event转载 2013-03-13 14:08:43 · 890 阅读 · 0 评论 -
android recovery模式及ROM制作
文章出处:http://www.cnblogs.com/xl19862005作者:Xandy1 总述为了方便客户日后的固件升级,本周研究了一下android的recovery模式。网上有不少这类的资料,但都比较繁杂,没有一个系统的介绍与认识,在这里将网上所找到的和自己通过查阅代码所掌握的东西整理出来,给大家一个参考!2 Android启动过程转载 2013-03-21 18:50:46 · 1062 阅读 · 0 评论 -
Android系统Recovery工作原理之使用update.zip升级过程分析
转自: http://blog.youkuaiyun.com/mu0206mu 这篇及以后的篇幅将通过分析update.zip包在具体Android系统升级的过程,来理解Android系统中Recovery模式服务的工作原理。我们先从update.zip包的制作开始,然后是Android系统的启动模式分析,Recovery工作原理,如何从我们上层开始选择system转载 2013-03-25 18:43:26 · 3778 阅读 · 0 评论 -
Android 4.0 OTA 升级过程概述
分析Recovery流程,可从分析升级包入手。升级包可由 make otapackage命令生成,由Makefile和打包脚本(Python)配合生成。生成规则比较复杂,其中包含了签名过程,细节不表,主要关注它的内容。升级包解压后结构如下:/home/simba/update_zip|-- boot.img|-- Manifest.xml|-- META-INF| |-原创 2013-03-26 20:43:00 · 2455 阅读 · 0 评论 -
[Android拾怡]弱化Java方法返回值类型
Android拾怡之弱化Java方法返回值类型原创 2013-12-01 11:15:55 · 1712 阅读 · 0 评论 -
mac 系统开发android,真机调试解决方案(无数的坑之后吐血总结)
转自:mac 系统开发android,真机调试解决方案(无数的坑之后吐血总结)最近学习android开发,安装了ADT开发环境之后,启动模拟器,慢的要死啊,完全不如苹果的好用,没法,自己买个android手机,准备联机调试程序。没想到在这个过程中,遇到了好多的坑,作为一个新人,每一步都过不去,花了将近2个小时,在万能的百度里查了n多次,终于解决了。在此,做个记录转载 2015-01-06 11:52:05 · 739 阅读 · 0 评论 -
Android safe mode
作者:YiLi Xie(yili.xie@gmail.com)日期:2010/04/07欢迎转载,请注明出处 Android safe mode • Enter safe mode 1.) Turn phone off ... remove battery .. WAIT for at least two minutes.2.) Power On Phone转载 2012-06-20 10:13:51 · 1558 阅读 · 0 评论 -
Android Activity singleTask 使用心得(补充中)
1.singleTask 的Activity被与其taskAffinity相同的任务启动时:进入启动他的任务栈,位于栈顶。2.singleTask 的Activity被与其taskAffinity不同的任务启动时:新起任务,必然位于栈底。此时若此singleTask Activity再次进入前台(即将放入栈顶),则销毁其上的所有activity。任务中有且只有这个activity,即既位于原创 2012-05-24 12:59:31 · 1278 阅读 · 0 评论 -
Android 中的 framebuffer
Android 中的 framebuffer作者: 李先静 xianjimli@gmail.com日期: 2010-01-14本文介绍了 Android 的 framebuffer 的整体架构,图文并茂,比较清晰。文章转自 http://www.limodev.cn/blog简介FrameBuffer 在Android中并转载 2012-03-18 12:10:15 · 1330 阅读 · 0 评论 -
Android Display架构分析
Android display架构分析一-高通7系列硬件架构分析如上图,高通7系列 Display的硬件部分主要由下面几个部分组成:A、MDP高通MSM7200A内部模块,主要负责显示数据的转换和部分图像处理功能理,如YUV转RGB,放大缩小、旋转等。MDP内部的MDP DMA负责数据从DDR到MDDI Host的传输(可以完成RGB之间的转换,转载 2012-03-18 12:28:34 · 1986 阅读 · 0 评论 -
Android上HDMI介绍(基于高通平台)
Android上HDMI介绍(基于高通平台) 本文重点针对HDMI在android上的应用,而比较相关的就是overlay机制。overlay在这里只是简单的介绍,后续会有文章再专门详述。 我没记错的话,高通从7X30开始,平台就可以支持HDMI(1.3)输出了。只不过在7x30上通过RGB接口外接一颗HDMI的transmitter来实现;而到了8系列(8x60),转载 2012-03-18 12:35:35 · 1630 阅读 · 0 评论 -
Android-2.2display系统介绍-SW架构
一、Overview上图的原型取自高通的文档,由于原图无法描述现有的架构,我在原图的基础了做了些修改,主要是增加了overlay部分,另外其他部分根据现有的软件也做了些许改动。下面先对上图做个大概的介绍,后面会针对重点部分做详细的分析。最上面一层为应用程序,根据数据类型以及应用的不同可以分为几种。第一种是最普通的应用,如UI界面的显示,这部分通常数据类型为RGB格式,数据无转载 2012-03-18 12:41:47 · 1209 阅读 · 0 评论 -
Android2.2 display系统介绍
之前写过android显示部分的文章,不过时过境迁,随着软件硬件的升级,到目前已经有很多地方改动了。本文将系统地讲解目前android(Froyo)平台上显示部分的架构,硬件平台已高通8X60为例,请参考。一、8×60平台显示系统硬件模块讲解上图取自8×60硬件的架构图,都是和显示比较相关的部分,其中最主要的就是MDP,同时为了兼容各种显示接口,8×60又集成了MIPI、HDMI的转载 2012-03-18 12:44:02 · 989 阅读 · 0 评论