自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 收藏
  • 关注

原创 Android基本技能

Android创建sdcard详细图解http://developer.51cto.com/art/201001/181253.htmAndroid ADB命令使用apk反编译问题总结http://www.eoeandroid.com/thread-30768-1-1.html

2011-01-25 16:41:00 134

转载 Android的IPC机制

<br />ServiceManager启动<br />源码:frameworks/base/cmds/servicemanager/Service_manager.c<br /> <br />int main(int argc, char **argv)<br />{<br />    struct binder_state *bs;<br />    void *svcmgr = BINDER_SERVICE_MANAGER;  //以此标识服务管理器<br /> <br />    bs = bind

2011-01-10 10:14:00 459

转载 android的智能指针

<br />在Android的源代码中,经常会看到形如:sp<xxx>、wp<xxx>这样的类型定义,这其实是Android中的智能 指针。智能指针是C++中的一个概念,通过基于引用计数的方法,解决对象的自动释放的问题。在C++编程中,有两个很让人头痛的问题:一是忘记释放动态申 请的对象从而造成内存泄露;二是对象在一个地方释放后,又在别的地方被使用,从而引起内存访问错误。程序员往往需要花费很大精力进行精心设计,以避免这些 问题的出现。在使用智能指针后,动态申请的内存将会被自动释放(有点类似Java的垃圾回收

2010-12-20 10:47:00 442

转载 Android的垃圾回收机制(android refbase类(sp wp))

sp和wp的实现过程~~<br />        个人觉得sp和wp实际上就是android为其c++实现的自动垃圾回收机制,具体到内部实现,sp和wp实际上只是一个实现垃圾回收功能的接口而已,比如说对*,->的重载,是为了其看起来跟真正的指针一样,而真正实现垃圾回收的是refbase这个基类。这部分代码的目录在:/frameworks/base/include/utils/RefBase.h<br />        首先所有的类都会虚继承refbase类,因为它实现了达到垃圾回收所需要的所有funct

2010-12-16 19:41:00 397

转载 C++智能指针

<br />      智能指针(smart pointer)的一种通用实现技术是使用引用计数(reference count)。智能指针类将一个计数器与类指向的对象相关联,引用计数跟踪该类有多少个对象共享同一指针。<br /> <br />      每次创建类的新对象时,初始化指针并将引用计数置为1;当对象作为另一对象的副本而创建时,拷贝构造函数拷贝指针并增加与之相应的引用计数;对一个对象进行赋值时,赋值操作符减少左操作数所指对象的引用计数(如果引用计数为减至0,则删除对象),并增加右操作数所指对象的引

2010-12-16 17:35:00 341

转载 “赢在中国”对80后的30个忠告

1、一个年轻人,如果三年的时间里,没有任何想法,他这一生,就基本这个样子,没有多大改变了。 -2、成功者就是胆识加魄力,曾经在火车上听人谈起过温州人的成功,说了这么三个字,胆子大。这其实,就是胆识,而拿得起,放得下,就是魄力。 -3、这个世界,有这么一小撮的人,打开报纸,是他们的消息,打开电视,是他们的消息,街头巷尾,议论的是他们的消息,仿佛世界是为他们准备的,他们能够呼风唤雨,无所不能。你的目标

2010-02-23 09:08:00 93

转载 [转]从一个男人关注的事情上 可以看出他的修养和抱负

一、拥有自信和风度 男人到了二十几岁后,就要开始学着用心去经营自己了,它体现在自己的思想与涵养上。自信是一个男人最重要的品质,自信的男人就你像一只在暴风雨中战斗的海鸥。海鸥所要说的只有一句话“让暴风雨来的再猛烈些吧”,只因为它无所畏惧。一个自信的男人,总是能够感染别人,无论这些人是朋友还是敌人。要使别人对你有信心,就必须要先对自己充满信心。自信的男人可以战胜一切困难。 一个有风度的男人就像一片大海

2010-02-03 17:54:00 130 2

原创 右键菜单调用命令行

新建文档 Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT/Folder/shell/CmdPrompt] @="cmd here" [HKEY_CLASSES_ROOT/Folder/shell/CmdPrompt/Command] @="cmd.exe /k cd %l" 重命名为cmd_here.reg双击写入

2009-12-31 13:37:00 818 2

原创 MTK平台内存申请失败处理方法

      在MTK平台实践过程中,针对大块空间的处理方法更多的是使用数组或者是结构体。因为在MTK中内存申请过程中很容易出现失败,也就是ASSERT(断言)。跟踪LOG发现问题是出现在ctrl_buff_pool.c中,但MTK提供的平台中该文件是不对外开放的,故要保证内存申请成功,可以在ctrl_buff_pool.h中进行修改。在ctrl_buff_pool.h有针对各种功能模块的内存池,枚

2009-12-25 14:13:00 276 1

转载 唐骏的秘密:我从最后一名开始努力

身为中国第一职业经理人,唐骏却说他的人生没有奇遇,也不曾走过任何捷径。 “如果我可以成功,你为什么不可以?”     当年,我进入微软时,只是一个写源代码编软件的普通工程师。看到和微软其他员工的差距,我没有放弃。我只能认为自己在公司排名倒数第一,事实上我也就是倒数第一。如何脱颖而出?我告诉自己只有勤奋这一条路。 3年为界 步步为营     每个人的职业生涯一定要有良好的规划,不能盲目努力。有的人只

2009-12-22 14:16:00 512

转载 毕业5年决定你的命运 --------值得所有不甘平庸的人看看

      正如"打工皇帝"唐骏说:"我觉得有两种人不要跟别人争利益和价值回报。第一种人就是刚刚进入企业的人,头5年千万不要说你能不能多给我一点儿工资,最重要的是能在企业里学到什么,对发展是不是有利……"       人总是从平坦中获得的教益少,从磨难中获得的教益多;从平坦中获得的教益浅,从磨难中获得的教益深。一个人在年轻时经历磨难,如能正确视之,冲出黑暗,那就是一个值得敬慕的人。最要紧的是先练好

2009-12-21 10:55:00 313

转载 公司绝不会告诉你的20大秘密 值得一看很受用

 公司绝不会告诉你的20大秘密 值得一看很受用 管理提醒: 本帖被 admin 执行置顶操作(2009-09-12) 1.入职时的工资高低不重要,只要你努力工作你会得到相应待遇的   我估计几乎找过工作的人都听过这句话,当我们确定被聘用跟公司谈工资时,他们都会说“如果以后你业绩突出、努力工作,你的报酬也会相应增加的”,特别是当第一次找工作的时候大多数人会相信这些话,但是千万~~别相信。   刚入职

2009-11-12 19:02:00 588

转载 8种人将被社会淘汰

    第一种,知识陈旧的人。如今,知识更新的速度越来越快,知识倍增的周期越来越短。20世纪60年代,知识倍增,周期是8年,70年代减少为6年,80年代缩短成3年,进入90年代以后,更是1年就增长1倍。人类真正进入了知识爆炸的时代,现有知识每年在以10%的速度更新。生活在这样一个时代,任何人都必须不断学习,更新知识,想靠学校学的知识“应付”一辈子,已完全不可能了。过去,我们对“终身教育”的理解是,

2009-11-10 09:51:00 101

转载 在Eclipse中加入Android源码

 在我们开发android程序过程中,很多时候 需要查看android的源码是如何实现的。这个时候就需要把android的源码加入到 eclipse中,那么在我们通过Git和repo获取到android源码之后,就需要把java文件提取出来,并放到android SDK子目录source下。如果手工来提取这些java文件是很耗费时间的,所以我们可以写个python脚本来自动提取android源码中

2009-11-09 08:54:00 385

转载 可以让你少奋斗十年的工作经验

可以让你少奋斗十年的工作经验 收藏 此文于2009-10-10被推荐到CSDN首页如何被推荐?转帖网址:http://blog.21ic.com/user1/5872/archives/2009/62334.html第一:不要认为停留在心灵的舒适区域内是可以原谅的。      每个人都有一个舒适区域,在这个区域内是很自我的,不愿意被打扰,不愿意被push,不愿意和陌生的面孔交谈,不愿意被人指责

2009-10-21 12:00:00 395

转载 《深入BREW开发》——第八章 BREW的事件处理

第八章 BREW的事件处理       在上一章里,我们创建了一个叫做HelloWorld的应用程序,是的,Hello BREW,我们已经进入到了你的世界!在领略了基本的BREW应用程序之后,我们将继续进发,去仔细的看一看应用程序的每一个核心的东西。       BREW应用程序最为基本的内容就是它的事件驱动和处理的机制,通过这样的机制,我们可以使用相对简单的思路开发出我们所需要的应用程序。基于事

2009-10-20 16:29:00 166

转载 《深入BREW开发》——第七章 创建新的BREW应用程序

第七章 创建新的BREW应用程序       在第六章中,我们介绍了Applet和模块的相关内容,并且熟悉了BREW开发环境,那么现在是开始创建一个属于我们自己的应用程序的时候了。在BREW中创建应用程序最简单的方式是,通过BREW在Visual Studio C++环境中的应用程序向导。通过向导,可以一步一步的让我们构建成功开发BREW应用程序所需要的组件。接下来我们就详细的介绍一下BREW应用

2009-10-20 16:28:00 306

转载 《深入BREW开发》——第六章 使用Applet和模块

第六章 使用Applet和模块       在BREW SDK中,每一个应用程序模块做为一个独立的Windows DLL文件开发。每一个模块中可以包含一个或多个Applet,并且必须有一个与此应用程序模块对应的MIF文件。通过BREW MIF Editor(MIF文件编辑器)创建的这个MIF文件中,包含了关于这个模块信息,例如支持的类、支持的Applet、Applet的权限和Applet信息等。在

2009-10-20 16:26:00 167

转载 《深入BREW开发》——第五章 BREW简介

第五章 BREW简介       在移动通讯领域,不可变化的应用程序抑制了消费者的使用兴趣,亟需一种可以实现类似Windows的图形化系统,在这个系统上,可以容易的开发应用程序,同时支持应用程序的安装和管理等功能。当然,少不了的要求是系统不能过于庞大,小巧似乎是移动通讯设备永恒的主题,对于软件也不例外。在这样的背景下,美国高通公司凭借其在CDMA2000平台上的霸主地位,开发出了BREW,并率先在

2009-10-20 16:26:00 170

转载 《深入BREW开发》——第二篇 磨刀不误砍柴工

紧接着上一篇的基础知识,在这一篇里,我们将首先来看看BREW到底是个什么样的东西,它有哪些东西组成以及我们可以用它来做些什么。本篇的名称叫做“磨刀不误砍柴工”,原因就是因为在这一篇中介绍的都是一些BREW的基础知识,并没有分析它内部的实现机制和原理,因为我想,如果要深入的研究一个系统,就要先仔细的看看它的外表是什么样子的,只有这样,我们才可以在分析晦涩的实现原理的时候,与BREW的外在联系起来,我

2009-10-20 16:25:00 251

转载 《深入BREW开发》——第四章 工程管理(Make File)基础

第四章 工程管理(Make File)基础       什么是Make File?很多Windows的程序员都不知道这个东西,因为那些Windows的IDE都为我们做了这个工作,但我觉得要成为一名专业的程序员Make File还是要懂。这就好像是我现在懂了C语言,但是我还要去了解编译器的“内幕”一样。Make File关系到了整个工程的编译规则。对于一个大型的工程来说,其中的源文件不计其数,并分别

2009-10-20 16:24:00 881

转载 《深入BREW开发》——第三章 编译器基础

第三章 编译器基础       看了这个题目,请不要误会我要告诉您编译器是怎么实现的,我写这节的主要目的是告诉您通常编译器是怎样对待您所写的程序的。大家都知道,程序最终都要在CPU上运行,那么像C语言这样的高级语言来说,编译器就是联结C和CPU之间的桥梁了。在这一节里我要告诉您编译器是如何充当这个“桥梁”角色的。       本节首先讲述一下程序员的层次问题,目的是让我们自己知道需要成为一名什么样

2009-10-20 16:22:00 623

转载 《深入BREW开发》——第二章 软件基础

 第二章 软件基础       我们正在向我们的软件王国进发,千万别急,在这条路上“枯燥”是我们最大的敌人,不知有多少人在它的面前臣服,但愿您不是其中之一。或许您觉得应该获得一些鼓励,写一些代码,能够看见一些诸如“Hello, World!”之类的信息。非常幸运,从这里开始您将能够看见它们了,我会将部分内容使用源程序的方式向您讲解。在这本书里,我将使用Visual Studio .Net200

2009-10-20 16:18:00 471

转载 《深入BREW开发》——第一篇 勿在浮沙筑高塔

第一篇 勿在浮沙筑高塔       对于现在从事软件开发很多人来说,都是直接接触的Windows操作系统,一开始学习的东西就是在Windows下的图形编程,尤其是可以快速开发的诸如VB、Delphi和C++ Builder等语言。它们的程序开发方式就像是作画一样,通过将控件放到对应的窗体上,然后设置属性,完成事件处理过程就可以生成一个像模像样的Windows程序了。虽然使用这种语言可以很容易的

2009-10-20 16:16:00 1056

转载 《深入BREW开发》——前言

导读这本书适合谁?       在构思这本书的时候,我一直在想它应该针对哪一类读者呢,是有开发经验的程序员,还是初出茅庐的新手?我虽然反复的追问,但是我真的无法完全区分这两类读者,因为任何人的知识都是有局限性的,没有任何人能够什么都懂。所以最终我确定这本书的读者应该是那些想在计算机软件技术上深入钻研的人——用心去读书的人!是的,把这本书献给那些用心去读书的人,这也可以激励我用心去写作!      

2009-10-20 16:14:00 565

转载 移植心得---android平台

移植心得---android平台 收藏 移植心得---android平台目前的情况:     android平台的UI开发语言最好选择是JAVA,也是google推荐使用的;     OCR引擎是C编写的,用JAVA改写显然不现实 平台环境:     OS: Windows XP SP2 JDK: 1.6.0_06 Toolchins: arm-2008q3-41-arm-

2009-10-20 11:59:00 1023

转载 Android内核的简单分析

Android内核的简单分析NeilWong (neilwong@hotmail.com)    Google的Android操作系统已经成功面市,因为Android操作系统是基于Linux-2.6.25内核的,并且目前所有的源代码也都全部开放,因此可以简单地加以分析以方便以后向其他平台的移植工作.    首先需要了解的就是Android的一些基本情况,并下载Android的源代码以方便分析.  

2009-10-20 11:58:00 546

转载 MTK分布式编译提高编译速度(IncredBuild)

一台机子编译一个程序要几个小时,如果利用上开发小组的其它联网电脑实现资源共享提高速度是不错的解决方式下面说一下怎样利用increbuild实现分布式编译1.make文件夹里面的Gsm2.mak修改make工具的编译项为IncredBuild增加运行参数#@echo tools/make.exe -fmake/comp.mak -r -R COMPONENT=$* ... $(strip $

2009-10-10 15:07:00 972

转载 MTK编译过程

MTK 软件工程的配置说明 请下载我的资源《MTK软件工程和配置简介.doc》 本文详解MTK的编译过程,并会根据我的理解来更新。阅读上文对本文的一些文件和术语会有很好的帮助。导读:   Comp.mak 完成模块编译连接,生成bin   Gsm2.mak 主编译文件,完成clean,remake,new等工作   XXX_GPRS.mak 客户私有的配置,根据客户的不同,而设定不同的

2009-09-29 18:10:00 799

原创 MTK编译出现Undefined symbol Image$$ZI$$Limit的问题解决

      在编译MTK过程中,在链接过程中出现 Undefined symbol Image$$ZI$$Limit (referred from sys_stackheap.o),Not enough information to produce a SYMDEFs file。通过MTK的LOG文件无法看出具体的错误信息,经查找是有些C的标准函数MTK上编译是可以通过,但是link阶段就会出错,

2009-09-10 11:35:00 3561

转载 Android SDK 1.5中文版 (Application基础—5) -----转载

  Android SDK 1.5中文版 (Application基础—5) 收藏 此文于2009-09-01被推荐到CSDN首页如何被推荐?1.4 组件生命周期应用程序组件都有生命周期——由Android实例化以响应Intent对象开始、直到这个实例被销毁。在此期间,组件可以是激活或者非激活状态。如果是Activity,则还包括对用户的可见或不可见状态。本节讨论Activity、服务以及广播接收

2009-09-10 11:26:00 427

转载 Android SDK 1.5中文版 (Application基础—4)-----转载

1.3 进程和线程当应用程序的第一个组件需要运行时,Android会为它启动一个Linux进程,及单一的执行线程。默认情况下,应用程序所有的组件均在这个进程、线程中运行。然而,你也可以安排组件在其他进程中运行,而且可以为任意进程衍生出其它线程。1.3.1 进程组件运行的进程由manifest文件控制。组件元素——,,和每个都有一个process属性来指定组件希望运行的进程。可以设置这些属性

2009-09-10 11:25:00 356

转载 Android SDK 1.5中文版 (Application基础—3)-----转载

  Android SDK 1.5中文版 (Application基础—3) 收藏 1.2 Activity和任务如前所述,一个Activity可以启动其他的,包括不同应用程序定义的Activity。例如,假设想让用户看到某个地方的街道地图。而且已经有一个Activity具有此功能,那么我们的Activity只需要把必要的信息打包到Intent对象并把它传递给startActivity()。于是地

2009-09-10 11:24:00 409

转载 Android SDK 1.5中文版 (Application基础—2)-----转载

1.1.1 激活组件:Intent当接收到ContentResolver发出的请求后,内容提供者被激活。而其它三种组件──活动(Activity)、服务和广播接收器被一种叫做Intent的异步信息所激活。Intent是一个保存着信息内容的Intent对象。对于Activity和服务来说,它指明了请求的操作名称以及作为操作对象的数据URI和其它一些信息。比如说,它可以为Activity传递一个请求向

2009-09-10 11:23:00 377

转载 Android SDK 1.5中文版 (Application基础—1)-----转载

  Android SDK 1.5中文版 (Application基础—1) 收藏 Android应用程序用Java做为开发语言。aapt工具把编译后的Java代码连同其它应用程序需要的数据和资源文件一起打包到一个Android文件包中,这个文件使用.apk做为扩展名,它是发布应用程序并安装到移动设备的媒介,用户只需下载并安装此文件到他们的设备即可。单个.apk文件中的所有代码被看作是一个应用程序

2009-09-10 11:21:00 441

转载 MTK通过TRACE的栈信息寻找BUG原因与解决方法--转载

前几天去一个公司帮他们解决BUG。BUG的描述是这样的,在使用在线QQ时,如果来电话,就会重启。没有发现ASSERT信息,只有stack dump信息。起初听他们描述,感觉像是QQ或者通话的问题。抓了TRACE之后,发现是MED模块的问题,由于MED主要是一些媒体文件的解码。由于观察现象时发现,通话时,还没有来得及响铃,就开始重启,因此可以大概推知是来电振铃出了问题,具体出在什么地方,需要查找TR

2009-09-09 18:23:00 683

转载 嵌入式C语言笔试题

1. 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)#define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL 我在这想看到几件事情: 1). #define 语法的基本知识(例如:不能以分号结束,括号的使用,等等) 2). 懂得预处理器将为你计算常数表达式的值,因此,直接写出你是如何计算一年中有多少秒而不是计算出实际的值,是更

2009-09-08 21:35:00 402

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除