- 博客(52)
- 资源 (2)
- 收藏
- 关注
原创 联想笔记本ubuntu系统下的背光调节
<br />终于搞定了ubuntu下联想笔记本背光调节的问题,发文记录一下:<br />笔记本型号:联想昭阳E46L<br />系统: Ubuntu 10.04<br />之前的现象是按Fn功能键调节亮度,ubuntu系统的亮度指示会显示出来,但是就是没有效果,后在晚上找到一个解决方法:编辑/etc/default/grub文件,找到<br />GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"<br />这一行,将其修改为:<br />GRUB_CMDLINE_LINUX_
2010-11-22 22:44:00 2459
原创 使用CMake构建android原生库
在android下进行原生C/C++应用程序开发,通常使用ndk-build脚本编译源代码,但是对于一些第三方库,采用ndk-build编译却是不太方便。我之前有些项目采用了CMake构建系统,现在希望把这些库拿到android下使用,因此想是否可以仍然采用CMake构建系统。本质上,ndk就是一套交叉编译工具链,加上一些方便使用的脚本,而CMake对交叉编译支持的很好,所以从理论上是可行的。上网查了一下,发现已经有老外做了这方面的工作,在此借用一下,以备今后参考。步骤如下:1. 创建gcc-android
2010-09-25 18:59:00 9480 2
原创 WebKit中的设计模式(一): Noncopyable
WebKit作为一款优秀的浏览器,其中有着非常优秀的设计,值得我们借鉴。本文的目的就是剖析WebKit中值得借鉴的设计模式,了解其设计思想,以达到能为我们使用的目的。关于设计模式,推荐阅读经典书籍>。本文所分析的设计模式,并非全部都是书上所提及的设计模式。因为设计模式是一个非常泛的概念,只要能够重复使用且能解决特定问题的设计,应该都可以算作设计模式,希望朋友们不要较真。言归正传,首先我们来分析以下WebKit中Noncopyable的使用。在阅读WebKit的源码过程中,发现很多类都继承了Noncopyab
2010-09-18 23:07:00 2455
翻译 webkit技术译文系列(二):RefPtr和PassRefPtr基础
原文链接:http://webkit.org/coding/RefPtr.html历史WebKit中的许多对象是引用计数的(reference counted),采用的模式就是类具有ref和deref成员函数增加和减少引用计数。每个ref调用必须有一个deref与之匹配。当在引用计数值为1的对象上调用deref方法时,对象删除。WebKit中的许多类通过继承RefCounted类模板应用该模式。时间回溯到2005年,我们发现存在许多由于不正确调用ref和deref而引起的内存泄露,特别是HTML编辑的代码。
2010-09-04 16:00:00 3969
翻译 WebKit如何加载web页面
原文链接:http://webkit.org/blog/1188/how-webkit-loads-a-web-page/在WebKit能够渲染web页面之前,它必须从网络加载页面和子资源。从web加载资源涉及到许多层,本文将集中于WebCore,即WebKit的主要渲染组件,如何参与加载过程。WebKit包含两条加载管道,一个用于加载文档到框架(frame),另一个用于加载子资源(如图片和脚本)。下图总结了两条管道涉及的主要对象:加载框架(Frame)FrameLoader负责加载文档到框架,
2010-09-03 10:59:00 2831
原创 Android Skia编程系列(一):Hello Skia
虽然在ndk文档中,google不推荐使用native C/C++来开发应用程序。但在实际开发中,可能不得不使用native C/C++的情况,比如跨平台软件开发。为手机开发软件,为了能够面向更广泛的用户群,免不了要同时开发symbian、windows mobile、android等主流手机平台版本。出于效率的考虑,一般手机软件采用C/C++开发,所以为了避免重起炉灶,在android下一般选择使用native C/C++开发核心组件,再加上一个Java语言编写的外壳。笔者最近移植一款应用到android
2010-09-01 18:56:00 9486 4
原创 WebCore中的渲染机制(二):块和内嵌(Blocks and Inlines)
<br />原文地址:http://webkit.org/blog/115/webcore-rendering-ii-blocks-and-inlines/<br />
2010-09-01 16:38:00 1244
原创 android cupcake源码编译问题
<br /><br />build/core/product_config.mk:261: WARNING: adding test OTA key<br />============================================<br />TARGET_PRODUCT=generic<br />TARGET_BUILD_VARIANT=eng<br />TARGET_SIMULATOR=<br />TARGET_BUILD_TYPE=release<br />TARGET_ARCH=ar
2010-08-30 22:27:00 2036 2
原创 上幼儿园的第一天
<br />朗朗终于上幼儿园了。早上起了个早,梳洗完毕就带他去幼儿园。幼儿园就在小区里面,平常散步也会经常路过那里,所以和他说我们去幼儿园吧,朗朗高高兴兴的就去了。来到幼儿园,已经有小朋友已经到了,老师也在门口迎接。见到老师后将朗朗交给老师,朗朗非常高兴的就牵着老师的手,来到一堆玩具前,也不和我们说一声再见。在门口呆了几分钟,也不见朗朗往这边张望。之前很多家长都告诫我们要做好孩子哭的准备,看来我们朗朗还是适应能力很强的。<br />放学是奶奶去接的,回家后自然会问一些学校玩、吃饭等情况,朗朗也一一回答了,就
2010-08-30 22:09:00 960
翻译 WebCore中的渲染机制(一):基础知识
原文链接:http://webkit.org/blog/114/webcore-rendering-i-the-basics/ DOM树web页面解析后形成节点树,称作文档对象模型(简称DOM),树上所有节点的基类是Node。Node.h节点分为几类,与渲染代码相关的节点类型有:Document - 树的根节点总是Document,WebCore中有三个文档类: Document, HTMLDocument和SVGDocument。Document用于除了SVG文档之外的所有XML文档。HTMLDocume
2010-08-30 15:40:00 2271 2
原创 Android调试问题
最近在Eclipse中调试android应用程序时碰到一个非常讨厌的问题,那就是模拟器明明已经在那儿了,但是eclipse偏偏还要新启动一个模拟器。要知道,模拟器启动可是相当费时。碰到这种问题,以前一搬就是先把先前的模拟器关掉,就使用新启动的模拟器。但这种问题频繁出现,的确恼火,后来无意中在网上发现一个解决方法,那就是在命令行中输入如下命令:C:/Documents and Settings/Administrator>adb kill-serverC:/Documents and Settings/Adm
2010-08-04 14:10:00 1073
原创 SurfaceView Overlay研究
<br />在项目中需要实现这样的功能,SurfaceView提供绘图功能,同时在上面还要求能够绘制控件。上网搜索了一番资料,无意中看到ApiDemos中的SurfaceView Overlay例子,发现这正是我所需要的。看看SurfaceView Overlay的布局文件:<br /><br /><!-- Here is where we put the SurfaceView, in a frame so that we can<br /> stack other views on to
2010-07-30 15:43:00 5120 3
原创 Android开机自动运行程序
<br />在windows中,可以通过修改注册表或者将程序加到启动菜单组中实现开机自动启动程序,linux中通过修改脚本也可以做到,在android中又是如何做到呢?秘诀就在于android.intent.action.BOOT_COMPLETED,Android系统被加载(boot)完成后即会发出一个BOOT_COMPLETED广播。所以,要在开机时启动你的程序,你只要创建自己的BroadcastReceiver,用以接收BOOT_COMPLETED这个广播,然后通过一个Intent启动你的程序。当然,
2010-07-13 11:12:00 1357
原创 使用C++实现JNI接口需要注意的事项
Android NDK带的jni例子都是使用C定义JNI接口,但是在项目中,因为Native代码是用C++编写的,所以我就使用C++定义JNI接口。没有想到,问题来了,现将问题总结如下:1、JNIEnv *env参数的使用所有JNI接口的第一个参数是JNIEnv *env, 在C中,使用方法是(*env)->NewStringUTF(env, "Hello from JNI!");但在C++中,其调用方法是env->NewStringUTF("Hello from JNI!");为什么有这种区别呢,看看jn
2010-07-08 11:37:00 7647 3
原创 Helix android移植问题汇总
关于如何配置构建环境,请参阅相关文章,在这里直奔主题,我希望编译android2.1(代号eclair)版本的helix player, 所以分支、profile、目标选择如下:SYSTEM_ID android-eclair-arm.eabi[0] Set BIF branch (hxclient_3_1_0_atlas_restricted)[1] Set Target(s) (splay-hxclnsdk)[2] Set Profile (helix-client-android-full)[3]
2010-07-06 10:36:00 2418 2
原创 2010新概念
一个中心:一切以健康为中心。 两个基本点: 遇事潇洒一点,看事糊涂一点。 三个忘记: 忘记年龄,忘记过去,忘记恩怨。四个拥有: 无论你有多弱或多强,一定要拥有真正爱你的人,拥有知心朋友,拥有向上的事业,拥有温暖的住所。 五个要: 要唱,要跳,要俏,要笑,要苗条。六个不能: 不能饿了才吃,不能渴了才喝,不能困了才睡,不能累了才歇,不能病了才检查,不能老了再后悔!看到了就转发给每一个你珍惜的人
2010-05-26 18:10:00 553
原创 "踩"蘑菇
一天清早,朗朗在床上玩耍。他妈妈看见他打着赤脚,就唱道"采蘑菇的小姑娘,背着一个大竹筐,清晨光着小脚丫..."。朗朗一听兴奋了,一边用力踩着被子,一边说道"踩蘑菇、踩蘑菇,我踩蘑菇..."。把我们笑晕了。
2010-05-03 15:32:00 714
原创 ubuntu服务器配置备忘录
最近因工作需要,申请了一台PC服务器作为SVN服务器,同时也考虑在上面建一个流媒体服务器,用作测试。服务器安装ubuntu desktop 9.10,同时考虑到windows PC访问,同时安装了samba服务,apache web server。以下就ubuntu的服务配置做一个记录:1) svn 服务器sudo apt-get install subversion安装之后创
2010-05-03 14:27:00 781
原创 流媒体术语汇总
clipclip这个词在流媒体资料中经常出现,字典上查到的意思为"夹子,钳,回形针,弹夹",但在流媒体中一般翻译成"剪辑",实际上在相关文章中clip、content、media files经常混用,就是指播放的流媒体文件。 HTTP cloakingcloak在字典中的意思是"遮掩,隐匿"
2010-04-22 19:16:00 1238
原创 Helix移植(四)Helix的裁减
所谓裁减,就是根据实际需求,去掉不用的功能,以达到减少体积的目的。通常,经过裁减的目标版本要比全版本的体积小,但是功能有所减少。Helix提供了丰富的裁减方式。首先,helix采用了插件体系,所以第一种简单的方法是在发布程序中去掉不用的插件。比如,不需要bmp图片格式支持,可以去掉bmpfformat.so、bmprend.so文件,不需要作任何修改。其次,helix提供了丰富的宏定义
2010-04-19 19:11:00 1833 5
原创 SlickEdit使用总结
一直耿耿于怀为什么没有linux版本的source insight,这可是程序员的最爱,不要和我将vim+ctags+scope,我不是大牛,还没有达到使用记事本狂写代码的程度,直到偶遇Slick Edit。Slick Edit是一款跨平台的集成开发环境,功能很强,同样价格也很强悍,需要199美刀。下面就Slick Edit使用中的问题做一个记录,备查。1. 字体问题(纯属个人喜好,供参考)
2010-03-24 12:02:00 8379 1
原创 Helix移植(三)编译目标程序
在上一篇文章中,运行build脚本后,出现选单,按照选单提示选择3,即可开始编译程序了。不过在编译程序之前,对其中的各选项的含义还是需要了解一下,下面就介绍个选项的含义。首先,选项[0] Set BIF branch (helix)就是选择代码分支,使用过配软件置管理系统的tx应该都知道,软件开发中一般有一个主干和若干分支,缺省值helix就表示获得主干分支上的最新代码。一般而言,主干上的最新
2010-03-18 21:43:00 2509 7
原创 Helix移植(二)理解Helix构建系统
Helix采用了Ribosome工具。这是一组用Python语言写的构建工具,它提供接口从CVS库获取代码,并编译程序。Ribosome包含两个主要工具:build 用于解析目标之间的依赖,获取源代码,并运行命令以正确的次序编译源代码umake 一个跨平台的Makefile产生器,它可以独立于build使用,在build中会调用umake。要使用build工具,首先需要设置环境
2010-03-09 23:54:00 3560
原创 Helix移植(一)获取源代码
本文简述了在Ubuntu操作系统下获取Helix源代码的步骤,主要翻译了Helix官方的文档,根据实际情况稍微做了修改,可以参考原文https://community.helixcommunity.org/Developers/quick_start/linux/part_a 必备软件:Python 2.4.3最新CVSC/C++编译器(gcc 2.95及以上)
2010-03-06 15:05:00 3668 4
原创 Moto Linux应用开发(六):USB连接共享PC上网
由于在开发A1200上的流媒体播放器,免不了长期播放视频,进行稳定性测试。开始是通过GPRS拨号上网,但播放视频太费流量了,充个50元,都顶不住一天的测试。看到window mobile的手机都可以通过PC上网,因此想到moto linux手机也可以共享PC上网,节省流量费用。从理论上将是可行的,因为moto手机可以开启USB LAN,通过USB连接线与PC组成一个局域网。PC相当于具有两个网卡,
2010-02-25 17:59:00 2344
原创 ubuntu常用软件
1. workrave安装方法: sudo apt-get install workrave介绍:是不是一工作起来就忘了时间,长久下去,腰酸腿疼等职业病就来了。这就是一款提醒你休息的软件,设置简单。2. truecrypt安装方法: 上www.truecrypt.org网站,下载安装包介绍: 3. stardict安装方法: sudo apt-get install s
2010-01-29 17:05:00 661
原创 Moto Linux应用开发(五):frame buffer
moto linux支持framebuffer写屏,SDK中包含了一个sample,直接写framebuffer显示红色和绿色。不过在写framebuffer之前需要了解一下framebuffer的相关特性。以下是我的A1200e的framebuffer信息:framebuffer info: bits_per_pixel(18), xres(240), yres(320)非常奇怪
2010-01-12 11:20:00 1081 2
原创 Moto Linux应用开发(四):A1200官方SDK
今天终于拿到moto官方SDK,是for A1200的,包括toolchian和EZX库及头文件,该SDK也适用于moto E6. 按照安装指导文档安装好SDK并执行脚本设置好环境变量后,首先是build一个最简单的sample程序hello,以验证SDK是否安装正确。运行qmake却出现如下错误: ~/workspace/devtools/moto-sdk/sample/gui/he
2009-12-30 13:42:00 1754 9
原创 Moto Linux应用开发(三):利用samba和telnet简化调试工作
转载时请注明出处和作者联系方式文章出处:http://blog.csdn.com/keensword007作者联系方式:琴剑 开发moto手机应用程序时,因为没有调试器,所以使用最原始的调试手段printf调试应用程序。开始时的开发步骤是:1. 在windows虚拟机上使用交叉工具链编译手机程序;2. 将USB模式切换到大容量存储器,再连接到PC win
2009-12-18 18:16:00 1055
原创 Moto Linux应用开发(二)EZX图形编程环境构建
转载时请注明出处和作者联系方式文章出处:http://blog.csdn.com/keensword007作者联系方式:琴剑 在手机上开发应用程序,少不了图形界面。Moto手机的应用程序都是基于EZX开发的。简言之,EZX是一种类似于qotpia的适用于嵌入式linux设备的平台,EZX application SDK基于Qt embedded, 软件结构如图1所示:图1但
2009-12-15 11:04:00 2454
原创 ubuntu 9.04下ndk安装问题
转载时请注明出处和作者联系方式文章出处:http://blog.csdn.com/keensword007作者联系方式:琴剑 从android网站下载ndk-1.6后,执行设置脚本后,出现如下错误: chenzhengyong@chenzhengyong-laptop:~/workspace/android/android-ndk-1.6_r1$ ./build/h
2009-12-12 14:53:00 1199
原创 Helix移植中的交叉编译的浮点问题
转载时请注明出处和作者联系方式文章出处:http://blog.csdn.com/keensword007作者联系方式:琴剑 交叉编译工具链建立后,接下来就是安装Helix构建系统,可以参考文档Getting Started with Helix Source Code on Linux。按照步骤操作,一般不会有问题。因为是针对moto E6手机,所以SYSTEM_ID
2009-11-25 11:58:00 1392
原创 Moto Linux应用开发(-): Ubuntu上建立Moto E6交叉编译工具链
转载时请注明出处和作者联系方式文章出处:http://blog.csdn.com/keensword007作者联系方式:琴剑 最近因工作需要移植Helix player到Moto的linux手机上,拿到的开发机是Moto E6.E6是一个2.4内核的arm体系的Linux。首先是上各大论坛恶补了一下基础知识, E6新手快速入门教程这篇文档总结得非常全面,推荐初次玩Moto手机
2009-11-19 15:33:00 2228 4
原创 Ubuntu 8.04下架设流媒体服务器
转载时请注明出处和作者联系方式文章出处:http://blog.csdn.com/keensword007作者联系方式:琴剑 目前主流的流媒体服务器有微软的windows media server、RealNetworks的Helix server和苹果公司的Darwin Streaming Server. 微软的windows media server只能在windo
2009-02-12 22:40:00 4246 1
原创 LFS构建备忘录
最近想把10年前的机器利用起来(赛扬400,256M内存,内存是后来扩充的,SDRAM 100,够老吧:)),这种配置跑标准linux发行版够呛,于是想到从头构建一套linux系统。好在已有这样一个项目,叫做linux from scratch(简称LFS), 提供了非常详细的指导手册。我是按照LFS v6.4的手册进行了。当然构建系统是在我的笔记本上进行的,按照手册的步骤一步步进行下来,还算比较
2009-02-10 21:51:00 758
原创 Ubuntu使用问题备忘录
linux下挂载ISO镜像文件mount -o loop -t iso9660 file.iso /mnt/test 重启到windows系统时间不准The computer clock becomes wrong everytime I dual boot to Windows. How do I solve this? Everytime I dual boot to m
2009-01-13 22:47:00 1697
翻译 使用GNOME库编写应用程序(1)
Chapter 2. GNOME库概览Chapter 2. GNOME库概览Prev NextChapter 2. GNOME库概览Table of ContentsGNOME库的位置GNOME库的结构GNOME库的位置在深入GNOME库的细节之前,让我们看看它处在GNOME应用程序所用到的库的哪个位置。GNOME库位于最上层,接下来是GTK+的两个组成部分:GTK和GDK。GTK层为
2008-08-05 22:45:00 766
翻译 使用GNOME库编写应用程序(0)
Chapter 1. 致谢、许可证及其它Chapter 1. 致谢、许可证及其它Prev NextChapter 1. 致谢、许可证及其它本教程的代码都基于GNU通用公共许可证或GNU库通用公共许可证,它们由我或者其他GNOME核心团队的成员编写。如果文中有英语表达错误,请原谅,因为英语并不是我的母语,我希望我的C语言比英语更好一些。Prev Next使用GNOME库编写应用程序
2008-08-05 22:42:00 532
翻译 使用GNOME库编写应用程序
使用GNOME库编写应用程序使用GNOME库编写应用程序 Next使用GNOME库编写应用程序George LeblThe GNOME Projectjirka@5z.com>Copyright © 2008 George LeblAbstract 在本教程中,您将了解GNOME库的大概轮廓,学习到使用GNOME库中大量的实用例程和组件加速应用开发,您还将学习到如何使用标
2008-08-05 22:40:00 799
Pragmatic Version Control using Subversion
2010-04-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人