- 博客(7)
- 收藏
- 关注

原创 Android多媒体总纲
由于现在的工作是多媒体相关,所以准备系统的学习一下Android的多媒体。我对多媒体的理解分为以下几点: 1. Media System 2. Media Data 3. Media ModuleMedia System对于Media System,我的理解是关于Media的框架一层,对应来说应该是Stagefright框架。Media Data对于Media Data,也就是多媒体数据。多媒
2016-08-20 15:31:15
665
原创 Media Data之多媒体数据库(三)MediaStore
MediaStore提供了对数据库管理的对应信息,并且封装了相关的方法方便上层调用。路径如下: /frameworks/base/core/java/android/provider/ MediaStore.java (The Media provider contains meta data for all available media on both internal and extern
2016-08-29 15:54:59
8246
原创 Media Data之多媒体数据库(二)MediaProvider
MediaProvider使用 SQLite 数据库存储图片、视频、音频等多媒体文件的信息,供视频播放器、音乐播放器、图库使用。提供了基本的增删改查等相关方法。路径如下: /packages/providers/MediaProvider/src/com/android/providers/media/MediaProvider.java 其中包含以下内部类: Databa
2016-08-29 14:51:43
6151
3
原创 Media Data之多媒体数据库(一)数据库结构分析
Android MediaProvider 使用 SQLite 数据库存储图片、视频、音频等多媒体文件的信息,供视频播放器、音乐播放器、图库使用。Media数据库分为internal 和external ,对应的是内部存储和外部存储数据库,两个数据库内容相似,我们分析的是外部存储设备的数据库。 外部存储数据库都是以类似 external-ffffffff.db 的形式命名的, 后面的 8 个 16
2016-08-29 14:20:07
6190
原创 Media Data之多媒体扫描过程分析(三)
3. 如何使用多媒体扫描介绍完多媒体的分析过程之后,接下来介绍一下我们怎么用多媒体扫描。3.1发送广播发送广播的方式比较简单,设置Intent并且传入要扫描的Uri即可。缺点是无法获取实时获取扫描状态,不利于更新操作,而且只能扫描单一文件。下面的例子是在下载应用中,对扫描的处理。if (shouldScan) { final Intent intent = new Intent(
2016-08-20 16:29:17
911
原创 Media Data之多媒体扫描过程分析(二)
2.1.5 android_media_MediaScanner.cpp对于android_media_MediaScanner.cpp来说,主要分析三个函数native_init,native_setup和processDirectory。static voidandroid_media_MediaScanner_native_init(JNIEnv *env){ ALOGV("nat
2016-08-20 16:18:54
1870
原创 Media Data之多媒体扫描过程分析(一)
此分析过程基于Android 6.0源码1.概述在Android系统中,多媒体文件通常在开机和SD卡挂载的时候进行扫描操作,目的是为了让多媒体应用便捷地使用和管理多媒体文件。设想一下如果进入多媒体应用才开始扫描,应用的可用性就很差,所以Android系统将这些媒体相关的信息扫描出来保存在数据库中,当打开应用的时候直接去数据库读取(或者所通过MediaProvider去从数据库读取)并展示给用户,这
2016-08-20 15:42:27
2641
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人