[置顶] Android开发之Thread类分析】的更多相关文章

在我们Linux系统中创建线程函数为:pthread_create(),在Android中我们为线程封装了一个类Thread,实际调用的还是pthread_create() 当我们想创建线程的时候,只需要继承于这个Thread类并实现虚函数thread_loop()即可. frameworks/base/include/utils/threads.h class Thread : virtual public RefBase { public: // 创建一个Thread对象,但是并不立即启动线…
转自:http://blog.csdn.net/llping2011/article/details/9706599 在我们Linux系统中创建线程函数为:pthread_create(),在Android中我们为线程封装了一个类Thread,实际调用的还是pthread_create() 当我们想创建线程的时候,只需要继承于这个Thread类并实现虚函数thread_loop()即可. frameworks/base/include/utils/threads.h class Thread :…
Android 开发之serviceManager分析 在Android系统中用到最多的通信机制就是Binder,Binder主要由Client.Server.ServiceManager和Binder驱动程序组成.其中Client.Service和ServiceManager运行在用户空间,而Binder驱动程序运行在内核空间.核心组件就是Binder驱动程序了,而ServiceManager提供辅助管理的功能,无论是Client还是Service进行通信前首先要和ServiceManager…
前面一节我们分析了Binder通信相关的两个重要类:ProcessState 和 IPCThreadState.ProcessState负责打开Binder 驱动,每个进程只有一个.而 IPCThreadState负责提供与Binder通信相关的接口,每个线程有一个.下面我们通过具体 示例MediaPlayerService来分析我们应用程序中怎么通过Binder通信的. frameworks/base/media/mediaserver/main_mediaserver.cpp int mai…
Android系统开发之XML文件的解析 我们知道Http在网络传输中的数据组织方式有三种分别为:XML方式.HTML方式.JSON方式.其中XML为可扩展标记语言,如下: <?xml version="1.0" encoding="UTF-8"?> <persons> <person id="23"> <name>Jack</name> <age>23</age>…
在Android中ProcessState是客户端和服务端公共的部分,作为Binder通信的基础,ProcessState是一个singleton类,每个 进程只有一个对象,这个对象负责打开Binder驱动,建立线程池,让其进程里面的所有线程都能通过Binder通信. 与之相关的是IPCThreadState,每个线程都有一个IPCThreadState实例登记在Linux线程的上下文附属数据中,主要负责 Binder的读取,写入和请求处理框架.IPCThreadState在构造的时候获取进程的…
MediaRecorder类介绍: MediaRecorder类是Android sdk提供的一个专门用于音视频录制,一般利用手机麦克风采集音频,摄像头采集图片信息. MediaRecorder主要函数: setAudioChannels(int numChannels) 设置录制的音频通道数 setAudioEncoder(int audio_encoder) 设置audio的编码格式 setAudioEncodingBitRate(int bitRate) 设置录制的音频编码比特率 setA…
官网关于MediaPlayer类的使用简介:…
PackageManger,可以获取到手机上所有的App,并可以获取到每个App中清单文件的所有内容. 设置应用程序版本号在应用程序的manifest文件中定义应用程序版本信息.2个必须同时定义的属性:android:versionCode — 整型, 相对于其他种类的版本号而言, 表示应用程序代码的版本. 其值是个整型,因此其他应用程序可以在程序编码中判断它, 例如检查升级或降级关系. 可以对其设置任何值, 然而应当确保每一个后续发布的应用程序使用更大的值. 尽管系统并不强制执行这种规则, 但…
玩过自定义View的小伙伴都知道,在View的绘制过程中,有一个类叫做Path,Path可以帮助我们实现很多自定义形状的View,特别是配合xfermode属性来使用的时候.OK,那我们今天就来看看Path中那几个常用的API. 1.moveTo moveTo表示将绘制点移动到某一个坐标处,该方法并不会进行绘制,主要是用来移动画笔.默认情况下起始坐标位于(0,0)点,我们可以手动调整默认位置. 2.lineTo lineTo表示绘制一条直线,参数表示目标坐标如下: @Override prote…