Android源码开发环境搭建教程实例讲解



Android源码开发环境搭建教程讲解。

1、需要安装Android的环境
编译Android的LINUX交叉编译工具
编译LINUX驱动的交叉编译工具(4.3.1)
编译JNI的工具包:NDK(在LINUX下)
编译JAVA程序:esclips+ADT+SDK

2、编译Android源码

$ source build/envsetup.sh ,然后就会多出几个可用的命令:
- croot:   Changes directory to the top of the tree.
- m:       Makes from the top of the tree.[......]

Read more

网络视频监控P2P解决方案



网络视频监控P2P解决方案。家庭与个人视频监控的特点是什么?这里分析了越来越多民用级别家庭以及网络视频监控市场的需求特点,提供一种经济可行易于大规模部署的P2P解决方案。在这里只给出了方案的思路,没有更深入的技术细节做详细的论述,各位朋友可以继续深入研究。

关键字

IPCAM, P2P,NAT, STUN, TURN, ICE, PJSIP, OPENSIPS, UDT, TCP, UDP

需求提出

网络视频监控市场十分火热,除公共安全市场持续高速增长外,民用家庭和个人视频监控的需求也在逐渐增多。得益于以下几点:

1. 网络视频监控产品的价格已经降低到个人很容易接[......]

Read more

如何构建高效多协议Android通讯框架即线程池和NIO技术应用讲解

如何构建高效多协议Android通讯框架以及线程池和NIO技术应用图片讲解。当前如何高效的请求得到网络数据成为大多数应用所面临的瓶颈问题。一些应用程序中可能会使用多种协议,比如IM通讯、视频流类型的应用会牺牲数据的完整性来更高效的获取数据,在这种类型移动开发应用中,也许就需要同时支持TCP、UDP以及HTTP协议。现在我们就试着基于安卓多线程技术ThreadPoolExecutor与NIO非阻塞式编程构建这样一个框架,高效的获取网络数据并优化支持多种协议的并发请求。

基本设计思路
基于ThreadPoolExecutor线程池来管理多个NIO线程的请求的,首先应该有个全局的Thread[......]

Read more

H264编码原理与I帧B帧P帧概念介绍

什么是H264编码原理与I帧B帧P帧概念介绍。h264的压缩方法介绍。H264为新一代的编码标准,以高压缩高质量和支持多种网络的流媒体传输著称,在编码方面:参照一段时间内图像的统计结果表明,在相邻几幅图像画面中,一般有差别的像素只有10%以内的点,亮度差值变化不超过2%,而色度差值的变化只有1%以内。所以对于一段变化不大图像画面,可以先编码出一个完整的图像帧A,随后的B帧就不编码全部图像,只写入与A帧的差别,这样B帧的大小就只有完整帧的1/10或更小!B帧之后的C帧如果变化不大,可以继续以参考B的方式编码C帧,这样循环下去。这段图像我们称为一个序列(序列就是有相同特点的一段数据),当某个图像与[......]

Read more

NIO多线程多线程服务器相关事件

NIO多线程多线程服务器相关事件。JDK1.4  NIO 有效解决了原有流式 IO 存在的线程开销的缺点,在 NIO 中使用多线程可以为了应对每个客户端请求而分配独立的服务线程,但主要的目的是通过多线程充分使用用多个 CPU 的处理能力和处理中的等待时间,达到提高服务能力的目的。 多线程的应用,为复杂的 NIO 代码进一步降低可读性和可维护性。良好的设计模型不仅带来高性能、高可靠的代码,也带来惬意的程序开发过程。

线程模型分析

NIO 的选择器采用了多路复用(Multiplexing)技术,可在一个选择器上处理多个套接字, 通过获取读写通道来进行 IO 操作。由于网络带宽等原因,在通道的读[......]

Read more

安卓手机刷机的HBOOT命令图片介绍

安卓手机刷机的HBOOT命令图片介绍。首先了解手机的各项特征作为刷安卓ROM的前提条件,接下来,就进入安卓手机的工程模式,也就是HBOOT模式,了解一下手机的各项基本信息参数,同时也是非常重要的几项信息。可以看到安卓手机中显示如下参数。

BRAVO PVT1 SHIP S-ON

HBOOT-0.93.0001

MICROP-031d

RADIO-5.10.05.23

Aug 10 2010,17:52:18

安卓手机刷机之HBOOT命令详解
注:以上信息,内容可能与你的不同,但无所谓,了解它们所代表的内容便可以了

BRAVO:这是手机型号的内部开发代号。
PVT(或者是EVT,D[......]

Read more

Linux的动态共享库的设置方法介绍

Linux的动态共享系统库的设置方法介绍。linux系统下程序找不到要链接的动态共享库,这就是在Linux上编译以及运行程序经常遇到的问题,大家应该大致了解linux共享库的一点基本原理,接下探讨一下怎么设置程序寻找动态共享库的行为。

Linux的动态共享库可分为三类:

1.操作系统级别的共享库和基础的系统工具库

例如libc.so, libz.so, libpthread.so等,这些系统库会被放在/lib和/usr/lib目录下面,如果是64位操作系统,还会有/lib64和/usr/lib64目录。如果操作系统带有图形界面,那么还会有/usr/X11R6/lib目录,如果[......]

Read more

android平台的jni中的日志输出到LOGCAT实例介绍

android平台的jni中的日志输出到LOGCAT实例介绍。安卓平台如何输出日记信息?Java环境下使用JNI时可以使用printf函数打印,Eclipse IDE开发工具控制台Console视图可观察到,但是Android环境下使用JNI,printf函数就无效了,LogCat视图以及Console视图里没有任何输出.在android编程java代码里面,使用Log.v等一些将日志输出到logcat,在LogCat视图中可以看到日志输出信息。

android NDK完全支持JNI本地方法调试。它提供4个android_log_XXX函数供我们使用。
路径:/build/platfo[......]

Read more

安卓音频压缩工具Speex的使用实例源码

安卓如何压缩音频文件,压缩声音的方法,Speex工具的使用,音频压缩工具Speex的使用实例源码。Android开发中需要录音并发送到对方设备上。然而手机常会是GPRS、3G等方式上网,节省流量是非常重要的,使用Speex来压缩音频文件,可音频压文件小数倍。

1.到Speex官网下载最新Speex源码

2.创建一个新的应用(我创建的应用名为Audio),并创建一个jni目录($project/jni)。

3.把speex源码目录下的libspeex和include目录及其子目录文件全部拷贝到$project/jni目录下($project/jni/libspeex and[......]

Read more

android编程WakeLock机制介绍

android编程WakeLock机制实例源码介绍。安卓节约电源的方式。应用程序耗电的实质,是所启用的硬件在消耗电量。

手机的耗电单元
CPU: 应用处理器(Application Processor)和基带处理器(Base Band)
Soc(系统级芯片): GPU(图形处理单元),
Video Codec等 外设:wifi,BT, GPS,LCD等
耗电情况:
应用处理器(Application Processor) 40~60mA
GPU开启时会大于100mA
基带处理器(Base Band)3~5mA
通话时100~200mA
LCD 100mA
Wifi 1[......]

Read more