android
saiwenniuniu
这个作者很懒,什么都没留下…
展开
-
libagl下copybit调用流程
<br />1.frameworks/base/opengl/libagl/copybit.cpp文件中,现了copybit()、drawTriangleFanWithCopybit_impl()、drawTexiOESWithCopybit_impl()函数。其中drawTriangleFanWithCopybit_impl()、drawTexiOESWithCopybit_impl()函数调用了copybit()函数。2.在frameworks/base/opengl/libagl/copy原创 2010-11-02 14:41:00 · 1775 阅读 · 0 评论 -
Android的智能指针
<br />在Android的源代码中,经常会看到形如:sp<xxx>、wp<xxx>这样的类型定义,这其实是Android中的智能指针。智能指针是C++中的一个概念,通过基于引用计数的方法,解决对象的自动释放的问题。在C++编程中,有两个很让人头痛的问题:一是忘记释放动态申请的对象从而造成内存泄露;二是对象在一个地方释放后,又在别的地方被使用,从而引起内存访问错误。程序员往往需要花费很大精力进行精心设计,以避免这些问题的出现。在使用智能指针后,动态申请的内存将会被自动释放(有点类似Java的垃圾回转载 2010-11-02 14:42:00 · 507 阅读 · 0 评论 -
Windows平台Android开发环境搭建
<br />一、必备软件<br />1、jdk-6u10-rc2-bin-b32-windows-i586-p-12_sep_2008.exe。<br />2、eclipse-SDK-3.4.2-win32.zip。<br />3、ADT-0.9.0.zip。<br />4、android-sdk-windows-1.5_r1.zip。<br />版本不同可能会导致不兼容。出现各种错误。请上网查询。<br /> <br />二、安装过程<br />1、jdk 1.6安装(双击jdk-6u10-rc2-bin原创 2010-11-02 14:43:00 · 453 阅读 · 0 评论 -
Android系统2D/3D硬件加速分析报告
1.前言:<br />如果处理器只有2D硬件加速而没有3D硬件加速,则可以利用opengl中的libagl,实现封装在libagl里的copybit,因为相对3D API来说,这个模块的封装google基本是做好的,只要去实现一个copybit HAL即可;如果处理器2D/3D硬件加速均有,那么可以丢开copybit,去实现openGLES 2D/3D API的加速功能。2.Android系统硬件加速流程:<br />frameworks/base/opengl/libs/EGL/egl.cpp文件中通原创 2010-11-02 14:37:00 · 2396 阅读 · 1 评论 -
Android设备节点的动态管理
<br />在Android中,没有独立的类似于udev或者mdev的用户程序,这个功能集成到了init中做了。代码见:system/core/init/init.c文件,如下:<br />if (ufds[0].revents == POLLIN) <br />handle_device_fd(device_fd);<br />其中handle_device_fd(device_fd)函数在system/core/init/devices.c中实现,参数device_fd 由函数device_init()原创 2010-11-02 14:42:00 · 724 阅读 · 0 评论