- 博客(41)
- 资源 (75)
- 收藏
- 关注
原创 C++基础#10:友元的使用方法,友元函数和友元类,friend
友元函数和友元类: 采用类的机制后实现了数据的隐藏与封装,类的数据成员一般定义为私有成员,成员函数一般定义为公有的,依此提供类与外界间的通信接口。 但是,有时需要定义一些函数,这些函数不是类的一部分,但又需要频繁地访问类的数据成员,这时可以将这些函数定义为该函数的友元函数。 除了友元函数外,还有友元类,两者统称为友元。
2009-10-30 08:08:00 2727
原创 C++基础#16:Java抽象类和C++虚基类的异同
java和C++都是面向对象编程语言,遵循面向对象的特性,继承,封装,多态。由于java的抽象类和C++虚基类很像,本篇对二者在这两个概念上进行一些比较。
2009-10-29 21:11:00 3069
原创 C++基础#9:纯虚函数和抽象类的用法
纯虚函数和抽象类: 含有纯虚函数的类是抽象类,不能生成对象,只能派生。他派生的类的纯虚函数没有被改写,那么,它的派生类还是个抽象类。 定义纯虚函数就是为了让基类不可实例化化,因为实例化这样的抽象数据结构本身并没有意义.或者给出实现也没有意义 一. 纯虚函数在许多情况下,在基类中不能给出有意义的虚函数定义,这时可以把它说明成纯虚函数,把它的定义留给派生类来做。定义纯虚函数的一般形式为:c
2009-10-29 21:03:00 3500
原创 Java事件模型与Android事件模型的比较
Android App开发时,上层用的是Java语言,二者都有事件处理机制,例如,JavaGUI中的按钮点击事件,Android Button的点击事件等。本节通过Java代码的使用,和AndroidApp的开发的对比,看一下,二者在事件处理模型中的异同。
2009-10-29 02:49:00 7342 1
原创 C++基础#8:类层次中的类转换
一. 单基派生的情形:对于 class base { }; class derived: public base //public inheritance { };有以下赋值兼容规则可以遵循: 1. 派生类对象可以赋值给基类对象 但是,因为基类对象不具有派生类对象所具有的成员,因此基类对象不能赋值给派生类对象,强转也不行。 der
2009-10-27 07:37:00 4433
原创 Android系统源码分析-进程间通信机制binder(四):从Native层到Driver层
本篇继续分析Android Binder机制相关源代码,主要从Native(c++)层到driver层的相关组件已经代码调用流程。
2009-10-26 00:25:00 7862
原创 Android系统源码分析-进程间通信机制binder(三):从framework层到Native层
Android Binder机制既提供IPC通信,又具有RPC功能,这样,对应上层应用程序提供了非常友好的API调用接口。实际上,为了支持支撑这一机制,从Android Framework到Native再到Binder Driver,是一个非常复杂的业务支撑系统。本节主要介绍在这个过程中,Android系统中,Binder在框架层的相关组件。
2009-10-26 00:23:00 7558
原创 Android系统源码分析-进程间通信机制binder(二):binder内存映射
Binder在Android系统中用于进程间通讯。为了实现用户空间和内核空间的数据交换,Android Binder机制采用了内存映射的方式,具体映射到/dev/binder这个设备驱动文件节点上。
2009-10-24 15:59:00 8209
原创 ADB使用方法
ADB全称Android Debug Bridge, 是android sdk里的一个工具, 用这个工具可以直接操作管理android模拟器或者真实的andriod设备(如G1手机).它的主要功能有:运行设备的shell(命令行) 管理模拟器或设备的端口映射 计算机和设备之间上传/下载文件 将本地apk软件安装至模拟器或android设备ADB是一个 客户端-
2009-10-24 09:04:00 27967 2
原创 Android四大组件之Android Service的用法
Android Service是Android四大组件之一,运行在后台,不可见。Android Service生命周期相关方法:onCreate,onStartCommand,onBind,onUnbind,onDestroy
2009-10-24 08:03:00 5574
原创 C++基础#7:继承-单继承,多继承,虚基类
继承(inheritance)和派生(derived): 类提供了说明一组对象结构的机制。借助于继承这一重要机制,已存在的类具有建立子类的能力,进而建立类的层次,扩充类的定义。 继承提供了创建新类的一种方法,一个新类可以通过对已有类进行修改和扩充来定义。从一个类继承定义的新类,将继承已有类的方法和属性,并且可添加不包含在父类中的新方法和属性。新类被称为已有类的子类,又称为派生类
2009-10-23 22:02:00 2807
原创 Android系统源码分析-进程间通信机制binder(一):守护进程servicemanager
Android系统是基于Linux系统的,从进程的角度来说,Android继承了Linux的进程间通信机制,例如共享内存,信号量,管道,socket等,除此之外,Android系统的最大特点之一就是提供了独有的进程间通信机制,即binder机制。而servicemanager进程正是支持binder机制的基石。
2009-10-23 20:37:00 8589 1
原创 Android中常用的包以及类的功能描述,以及Android系统架构图
AndroidOS为应用程序开发者提供了一整套的移动设备解决方案。为了进行Andorid应用程序的开发,开发者需要了解和熟悉框架原理以及各种类库,包括从java延伸过来的,以及Framework层提供的。本节,主要介绍一些常用的包,以及类。
2009-10-23 20:31:00 1657
原创 Android基础#8: Android Studio中的图片文件路径mipmap和drawable
Android Studio中的图片文件路径,主要在mipmap和drawable相关目录下。只所以单独列出来进行说明,是因为对于资源图片目录结构的管理,和Eclipse有很大的不同。在Eclipse中,是放在drawable相关目录下;而在Android Studio中,新加了mipmap相关目录。在mipmap中,只存放纯图片文件,在drawable中,则存放可变图片相关文件,即xml,p9图片等。
2009-10-23 20:14:00 2764
原创 Android基础#7: Toast工具类的实现,以及设置Toast文字居中显示
Android App开发过程中,Toast默认的显示方式是在屏幕的底部,但是,有时候,感觉文字显示在屏幕中间比较美观。本篇实现的功能是:让Toast文字可以根据不同的参数,来显示在屏幕中间,靠上或靠下,从而满足App的需求。
2009-10-23 20:09:00 3943 6
原创 Android系统源码分析-从init进程开始
Android系统底层用的是Linux,和Linux一样,init进程是Linux系统用户进程的第一个进程,它是由Linux内核(kenerl)启动的。其它所有的用户进程都是init进程的子进程。我们从init进程来分析Android系统的启动流程。
2009-10-23 19:57:00 7911
原创 Android基础#6: Android AndroidManifest清单文件介绍
Android AndroidManifest.xml, 即Android清单文件。每个Android应用的根目录中都必须包含一个 AndroidManifest.xml 文件。 清单文件为 Android 系统提供有关您的应用的基本信息,系统必须获得这些信息才能运行任意应用代码。
2009-10-23 19:37:00 1699
原创 Android基础#5: Android中的资源文件, res目录
在Android中,将UI与业务分离,UI中的很多元素,就是资源。包括: 动画, 颜色, 布局文件,图片......资源。
2009-10-23 19:35:00 1922
原创 Android基础#15: Android菜鸟问题解决--Unable to start NullPointerException,控件找不到引起的空指针
编译Success,并不等于运行Success。-----箴言-----内容简介:本节再来看一个常见的崩溃问题。在进行Android应用程序开发时,经常遇到“Unable to start activity”,“on a null object reference”,“java.lang.NullPointerException: Attempt to invoke virtual method”
2009-10-23 19:34:00 2246
原创 Android基础#11: Layout经典布局--如何使用RelativeLayout相对布局来实现控件左右平均分布
世间无绝对,Relative即相对。内容简介:RelativeLayout相对布局的使用。上一篇,我们用LinearLayout实现了水平平均布局,今天,来看如何使用RelativeLayout来实现水平平均布局。
2009-10-23 19:33:00 2315
原创 Android基础#10: Layout经典布局--layout中的控件左右平均分布,使用LinearLayout实现
优雅的设计好你的布局-----箴言-----内容简介:在实际开发中,经常需要将控件进行水平平均分配,本篇介绍用LinearLayout来实现水平平均。
2009-10-23 19:32:00 2417
原创 Android基础#9: Android常见布局用法
如何排列你的控件,也是个学问-----箴言-----内容简介:Android 为用户提供了Layout布局这个概念,来组织各个view(控件)的UI布局,可以认为它是一个放控件的容器。布局文件是一个xml文件,之所用xml,是因为xml容易理解,而且是业内标准文档解析格式,非常成熟。用xml布局,使得UI与业务逻辑完全分离,而且可以直接查看布局展示效果,极大提高开发效率,易于维护。
2009-10-23 19:30:00 1525
原创 Android基础#14: Android问题解决--Unable to find explicit activity class,ActivityNotFoundException,未声明Act
错误信息,通常直指问题根源。-----箴言-----内容简介:本节来看一个常见的崩溃问题。在进行Android应用程序开发时,经常遇到“AndroidRuntime: FATAL EXCEPTION: main”,“android.content.ActivityNotFoundException: Unable to find explicit activity class ”问题,程序直接崩溃。
2009-10-23 19:27:00 2269
原创 Android基础#13: Layout经典布局--绝对布局AbsoluteLayout的使用
世间无绝对,真是这样的么?-----箴言-----内容简介:Android提供了AbsoluteLayout,即绝对布局, 即设置控件的绝对位置,控件坐标"从x,y"开始进行排列。在使用AbsoluteLayout布局方式时,需要指定空间的x,y精确坐标。
2009-10-23 19:19:00 1487
原创 Android基础#12: Layout经典布局--帧布局FrameLayout的使用
视图从左上角(0,0)开始。-----箴言-----内容简介:FrameLayout(帧布局)也是Android开发中常用的一种布局方式,它的特点是:所有的视图控件,按照层次固定在屏幕的左上角,后面的视图组件覆盖前面的。
2009-10-23 19:13:00 1508
原创 Android基础#4:Android Handler的使用,sendMessage等方法的调用
Handler是一种在线程之间进行消息传递的机制。在Android系统中,当一个Android程序第一次启动的时候,Android会启动一个LINUX进程和一个主线程。默认的情况下,所有该程序的组件都将在该进程和线程中运行。这里的主线程就是UI线程,UI线程用于更新UI界面。一些耗时的操作如果运行再主线程,会阻塞UI线程,导致UI界面更新不了,甚至会发生ANR(Application Not Response),应用程序无响应。
2009-10-23 08:03:00 1964 1
原创 Android基础#3:Android Activity生命周期详解,onCreate~onRestart
作为与用户交互的桥梁,从生到灭,Activity有自己的生命周期,相信对下面这张图都不陌生。这张图详细而直观得表现了Activity各生命周期间的关系。
2009-10-23 07:59:00 1841 1
原创 Andoid源码编译-Android源码编译完成后的代码目录结构
Android源码是开源的,用户可以下载下来自行编译,下面是一份编译后的代码结构:
2009-10-23 07:56:00 2356
原创 Android基础#2:Android中的几个基本概念:4大组件,Process,Task
Android中的几个基本概念:apk,Activity,Service,ContentProvider,BroadcastReceiver,WMS,Process,Task
2009-10-23 07:54:00 1766
原创 Android基础#1:Android Studio中的代码结构,第一个Android应用程序:Hello开始
Hello World! 为什么第一个程序总是它。 我们的第一个Android 应用程序,仍然从显示诸如hello字符串开始。本文展示了如何在Android Studio中进行Android应用程序的开发步骤,以及Android Studio中的代码的目录结构。
2009-10-23 07:50:00 4224
原创 Android 调试桥(adb)
Android 调试桥(adb) Android 调试桥(adb)是多种用途的工具,该工具可以帮助你你管理设备或模拟器 的状态。可以通过下列几种方法加入adb:在设备上运行shell命令 通过端口转发来管理模拟器或设备 从模拟器或设备上拷贝来或拷贝走文件下面对adb进行了介绍并描述了常见的使
2009-10-23 07:37:00 1561
原创 C++基础#6:C++中的引用类型
引用(reference)是c++对c语言的重要扩充。一. 引用的概念引用引入了对象的一个同义词。定义引用的表示方法与定义指针相似,只是用&代替了*。1. 引用就是为某个变量或隐含的临时变量起个别名,对别名的操作等同于对目标变量的操作;2. 引用本身不是变量,它是某个变量的别名,其本身不占存储空间。二. 引用的初始化:1. 定义引用时必须指出目标对象(即声明的同时进行初始化) ;
2009-10-22 23:19:00 2973
原创 C++基础#5:构造函数,析构函数,拷贝构造函数和赋值函数
一. 构造函数1. 构造函数是一种用于创建对象的特殊成员函数,当创建对象时,系统自动调用构造函数。2. 构造函数名与类名相同,一个类可以拥有多个构造函数(重载),构造函数可以有任意类型的参数,但不能具有返回类型,连Void也不可以,它有隐含的返回值,该值由系统内部使用。3. 构造函数的作用是:为对象分配空间;对数据成员赋初值;请求其他资源。4. 如果一个类没有定义构造函数,编译器会自动生成一个无参
2009-10-21 23:11:00 7476
原创 Window下Android SDK安装
Window下Android SDK安装说明: 我已经以word文档的格式将这部分内容上传到我我的资源列表中,感兴趣的朋友可以去下载.下载地址:http://liranke.download.csdn.net/ 个人认为eclipse-jee-galileo-win32版本比较好用,一.所需资源:1. JDK: jdk-6u10-windows-i5
2009-10-18 22:22:00 2593
原创 Android 启动过程
Android 初始化流程,从init.c开始说明: 我已经以word文档的格式将这部分内容上传到我我的资源列表中,感兴趣的朋友可以去下载:下载地址:http://liranke.download.csdn.net/ Init.c 1.1 Main functionInit is the first process after kernel
2009-10-18 21:09:00 4403
原创 C++基础#4:this指针的用法-何时显示引用与隐式引用
this指针的含义及其用法:1. this指针是一个隐含于每一个成员函数中的特殊指针。它指向正在被该成员函数操作的那个对象。2. 当对一个对象调用成员函数时,编译程序先将对象的地址赋给this指针,然后调用成员函数,每次成员函数存取数据成员时,由隐含使用this指针。3. 当一个成员函数被调用时,自动向它传递一个隐含的参数,该参数是一个指向这个成员函数所在的对象的指针。 4. 在C++中,thi
2009-10-18 09:59:00 5893
原创 王传福以350亿元登顶中国首富
2009年度百富榜昨日在京发布,比亚迪公司王传福以350亿元居首。随着去年首富黄光裕的被捕入狱,榜眼杜双华的日照钢铁被国企山东钢铁收购,给2009年度胡润百富榜前十位的排名带来了巨大变化。
2009-10-17 22:03:00 3063
原创 C++基础#3:const用法详细介绍
1. const数据成员的初始化:(1) 在对象层次上,常量几乎没有任何意义,因此const数据成员通常也是静态的,即用static const来修饰而不是const;(2) 正如static数据成员一样,satic const数据成员也必须在源文件中为其分配空间并进行初始化,也是最后一次对其赋值的机会。 另外,C++规定,如果数据成员是简单类型(如int,char.....),则允许程序员在声明
2009-10-17 21:51:00 3508
原创 Linux下的Android + Eclipse环境搭建
本文描述了如何在Linux ubuntu 8.10下搭建Android开发环境.步骤:1. 安装虚拟光驱daemon400.exe2. 在windows XP下用虚拟光驱安装ubuntu 8.10, iso文件为:ubuntu-8.10-beta-desktop-i386.iso3. 用dpkg命令打patch:1) 进入ubuntu
2009-10-16 07:41:00 3196
原创 C++基础#2:static详细介绍-修饰函数,修饰变量,修饰类
1. static关键字的使用形式:static可以用作函数和变量的前缀,用以修饰变量,函数,数据成员,成员函数。(1)在C/C++中,修饰变量或函数:如,static int a; // 静态变量 static get_a(){ return a;} // 静态函数(2)在C++中,修饰数据成员或
2009-10-15 20:56:00 9074
Android-电池管理-实时获取电池电量,温度...等属性。
2022-04-20
Android Fragment的使用-一个Fragment影响另外一个fragment。
2022-04-20
Android-sqlite3命令-Android开发-sqlite3_armv7
2022-03-18
Android系统-源码阅读-系统启动流程笔记
2022-03-16
AXMLPrinter2.zip
2020-09-21
android_gingerbread_javasrc1.zip
2015-07-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人