Android学习——MediaProvider与Music模块

一、MediaProvider数据库介绍

  1. 关系型数据库

   关系模型的物理表示是一个二维表格,由行和列组成。

  2. MediaProvider数据库存储位置

      /data/data/com.android.providers.media/databases

      内置存储:internal.db

      外置存储:external-ffffffff.db

  3. MediaProvider扫描更新数据库

      app层:MediaScannerReceiver、MediaScannerService

      Framework层:MidiaScanner

      Native层:StagefrightMediaScanner、MediaScannerClient

  4. 表与视图的区别

      表(table):存放实际数据,占用物理空间

      视图(view):虚表,不占物理空间,只是逻辑概念

 

二、平台的外部存储配置

  模拟存储为主,物理存储为辅

  1. emulated primary

      将部分内置存储暴露与模拟层来实现外部存储,并标记成主要存储,根挂载点目录:/storage/emulated/

  2. physical secondary

      将SD卡、USB设备这类便携式存储标记为次要存储,根挂载点目录:/storage/(T卡ID)/

      如:/storage/3066-1412/          3066-1412是SD卡的标识,每张SD卡的标识是唯一的

 

三、MediaProvider在Music中的应用

  1. Music应用对数据库的操作共2种:查询、删除

  2. Music模块设计框架

      

  3. URI

      Uri可以表示数据库中的所有表;某一个表;或某一个表里的某一个ID。Androd设备上的image/audio/video/file等资源数据都是存在数据库表中,

      因此,可以说:Android上可用的每种资源(图像、视频等)都可以用Uri来表示。

 

四、MediaProvider在SoundRecorder中的应用

  SoundRecorder应用对数据库的操作共3种:查询、删除、插入、重命名

 

五、AIDL(Android Interface definition language)

  AIDL是Android中IPC(Inter-Process Communication)方式中的一种。

  AIDL的作用是让你可以在自己的APP里绑定一个其他APP的service,这样你的APP可以和其他APP交互。

转载于:https://www.cnblogs.com/pomodoro/p/11444840.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值