深入剖析Android音频之AudioTrack

播放声音可以用MediaPlayer和AudioTrack,两者都提供了java API供应用开发者使用。虽然都可以播放声音,但两者还是有很大的区别的。其中最大的区别是MediaPlayer可以播放多种格式的声音文件,例如MP3,AAC,WAV,OGG,MIDI等。Media...

2017-02-28 10:24:21

阅读数 691

评论数 0

Android的HAL

1、Android的HAL是为了一些硬件提供商提出的“保护proprietary”的驱动程序而产生的东东,简而言之,就是为了避开Linux kernal的GPL license的束缚。Android把控制硬件的动作都放到了user space中,而在kernel driver里面只有最简单的读写寄...

2017-02-27 20:11:40

阅读数 177

评论数 0

Android 编译系统(一、二、三)

Android的优势就在于其开源,手机和平板生产商可以根据自己的硬件进行个性定制自己的手机产品,如小米,LePhone,M9等,因此,在我们在对Android的源码进行定制的时候,很有必要了解下,Android的编译过程。 如果你从来没有做过Android代码的编译,那么最官方的编译过程就是...

2017-02-27 20:11:08

阅读数 169

评论数 0

eclipse 打包jar文件

在开发java工程时,一个项目可能分为多个模块,为了实现模块间的解耦和独立,提高模块的复用性,通常将项目按模块分为多个java工程进行开发,最后通过jar包等工程依赖的方式实现系统集成,提高模块的耦合和复用。   现在开发Android项目通过实践和总结,发现这种方式特别有必要,比如开发一个an...

2017-02-20 10:23:09

阅读数 275

评论数 0

Android recovery UI实现分析

Android recovery模式为何物? 关于这个问题, baidu上已经有无数的答案,不理解的朋友先补习一下。从纯技术角度来讲, recovery和android本质上是两个独立的rootfs,  只是recovery这个rootfs存在的意义就是为android这个rootfs服...

2017-02-18 15:27:59

阅读数 295

评论数 0

JNI资源释放

JNI 编程实现了 native code 和 Java 程序的交互,因此 JNI 代码编程既遵循 native code 编程语言的编程规则,同时也遵守 JNI 编程的文档规范。在内存管理方面,native code 编程语言本身的内存管理机制依然要遵循,同时也要考虑 JNI 编程的内存管理...

2017-02-04 14:43:03

阅读数 284

评论数 0

JAVA 线程池的使用

Java通过Executors提供四种线程池,分别为: newCachedThreadPool创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程。 newFixedThreadPool 创建一个定长线程池,可控制线程最大并发数,超出的线程会在队列中等待...

2017-02-04 11:38:11

阅读数 122

评论数 0

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