- 浏览: 263796 次
- 性别:
- 来自: 济南
文章列表
选择和决策
比较数据值
1 关系运算符:< > == <= >= !=
2 if语句
嵌套的if语句
不依赖编码的字符处理: 包含<cctype>头文件
3 if-else语句
嵌套的if-else语句
4 逻辑运算符
&& 与 全真为真
|| 或 全假为假
! 非
5 条件运算符
逻辑表达式?表达式一:表达式二
6 switch语句
7 无条件分支 goto语句
例如:MyLable: x=1;
goto MyLab ...
处理基本数据类型
1 混合表达式 (向上转型)
2 赋值和不同类型 类型1=类型2 尽量避免高类型向低类型转换
3 显示强制转换
static_cast<转换后的类型>{表达式}
老式的强制转换(转换后的类型)表达式
4 确定类型
sizeof();返回一个整数(size_t 就是unsigned int)
5 确定数值的上下限
显示double类型的变量中的最大值,代码如下:
std:numeric.limits<double>::max(); 同理max换成mai取得最小值
6 按位运算
移位运算符 &l ...
基本概念
第一个程序 helloword
/*标准头文件*/
#include<iostream>
using namespace std;
int main()
{
cout<<"helloworld!\n";
return 0;
}
1 名称
c++中可以命名的五种元素
函数
变量
类型
标签
命名空间
注:名称不能以数 ...
Android的传感器系统
传感器的种类
传感器名称
Java中的名称
本地接口名称
数值
加速度
TYPE_ACCELEROMETER
SENSOR_TYPE_ACCELEROMETER
1
磁场
TYPE_MAGNETIC_FIELD
SENSOR_TYPE_MAGNETIC_FIELD
2
方向
...
Gps(globalPositionSystem全球定位系统)和定位部分
除此之外还有利用基站(cell)定位的AGPS等设备
定们系列统的基本架构
主要数据来源有两个:GPS定位和network定位(基于cell和wifi热点的定位)
定位部分的结构如图
定位系统的驱动层
Network定位的底层驱动和适配层实际上就是RIL和wifi框架的组成部分
Cell定位就是利用基站的cellID以及LAC实现
Wifi则是利用热点的相关信息如名字mac地址ip地址实现
GPS设备分为硬GPS和软GPS
硬GPS上电就可以直接输出NMEA数据
软
蓝牙部分
蓝牙协议栈1.11.22.02.13.0
异步数据和语音传输采用的协议:
逻辑链路控制和适配协议(L2CAP)、服务发现协议(SDP)、串口模拟协议(RFCOMM)
主要控制接口由主机控制接口层体现,他是蓝牙协议里软硬件之间的接口
在HCI之上的是蓝牙的上层应用框架,每个应用模式为一个profile,如无线立体声耳机A2DP
(AdvancedAudioDistributionProfile)等
蓝牙的基本架构
自上而下包括以下内容:
Linux内核的蓝牙驱动程序
Linux内核的蓝牙协议层
Bluez蓝牙在用户空间的库
Bluez适配层
Android ...
Android的联接部分
Wifi部分
Wifi的基本架构
自上而下包括的一些内容:
Linux内核的标准wifi驱动程序和协议
Wap_supplicant可执行程序(WAP应用层认证客户端)
Wifi的HAL
WIFI的JNI接口
Wifi的java框架
Wifi的相关应用
Wifi的结构图如下:
Wifi的本地实现(主要包括wap_supplicant和wap_supplicant适配层)
WAP是wifiprotectedAccess
Wap_supplicant是WAP应用层认证客户端,负责认证完成相关的登 ...
Android电话部分综述
主要部分:
呼叫
短信
数据连接
SIM卡
电话本
电话部分分为以下几层:
Modem驱动
RIL(radiointerfacelayer)
电话服务框架
应用层
Modem通信模块
Chip-on-board
在Modem硬件上一般使用两个渠道:
一个是用于A ...
android的多媒体系统
多媒体系统的结构和业务
多媒体系统的宏鸡观结构
应用层,java框架层,c语言层,硬件抽像层,其中输入输出由HAL层,处理环节由packetView的OpenCore实现,
多媒体业备有以下几种:
musicPlayer(音频播放器)
viderPl ...
android中的audio系统
Audo系统主要分如下几个层次:
1.Media库提供的Audio系统本地部分接口
2.audioFlinger作为audio系统的中间层
3.audio的硬件层提供底层支持
4.audio接口通过JNI和java框架提供给上层
Audio的系统结构如下图
代码分布如下:
1audio的java部分
路径为:/frameworks/base/media/java/android/media例:audioManager
2Audio的JNI部分(最终生成库libandroid_runtime.so)
/frameworks/ba ...
Android的GUI系统
AndroidGUI系统综述
C语言部分包括:
pixelFlinger(下层工具库)
头文件/system/core/include/pixelflinger其生成的动态库libpixelflinger.so只连接
C语言库libcutils
Format.h提供像素格式的定义,
Pixelflinger.h提供接口功能的定义
源代码/system/core/libpixelflinger
Libui(GUI的框架库)
头文件:/system/c ...
第四章android的底层库和程序
知识点:
Android.mk的书写规则
在android中增加可执行程序、动态库、和静态库的方法
Init.rc启动角本的使用方法
Binder机制的工作原理
使用binder在程序中构建IPC的方法
Android的系统进程
底层库和程序的结构
1增加本地程序和库的方法
要增加的库和程序跟路径没有关系,只和它们的android.mk文件有关系
Android.mk和makefile有所不同,android.mk主要包含一些系统公共有宏
android.mk中选项的路径
Build/core/config.mk
各个选项的默 ...
android的linux内核和驱动程序
Androidr专用驱动
Ashmem:匿名共享内存驱动
Logger:轻量级的log驱动
Binader:基于operBinder系统的驱动,为android提供IPC支持
AndroidpowerManager:电源管理器
LowMemoryKiller:缺少内存时,杀死进程
AndroidPMEM:物理内存驱动
Android使用的设备驱动
Framebuffer驱动是标准和显示设备驱动,对于PC系统就是显卡驱动设备节点
通常是/dev/fbx
Framebuffer驱动的主要头文件:include/llinux/ ...
1.android的系统架构(linux2.6内核)
Linux操作系统及驱动
本地代码框架
Java框架
Java应用程序
Android的程序库
系统c库
多媒体库:packetVideo的openCore
SurfaceManager:提供2D和3D的无缝融合
libWebCore:web浏览器引擎
SGL:Skia图形库,,2D图形引擎
3Dlibraries:基于OpenGLES1.0API的实现
FreeType:位图和矢量字体显示
Android的运行环境dalvik虚拟机和java基础库
Android应用程序框架
Views
content ...
给root设定密码后,仍可以sudo su 切换到root用户
d rwx r-xr-x 文件权限
第一位:d是目录文件
l是链接文件
-是普通文件
p是管道文件
第二到四位: 表示这个文件的属住拥有的权限 r读,w是写,x是执行
第五到七位: 表示 ...