一. MMS功能描述:
MMS是Multimedia messaging service的缩写,中文是多媒体信息服务。在android系统中,它支持SMS(Short Messaging Service)短信和MMS(Multimedia messaging service)彩信发送和接收;支持接收Wappush,Wappush又叫服务信息或者推入信息,是一种特殊格式的短信;同时还能主动接收BroadCast
Message,但是目前中国范围内暂不支持该功能。
MMS是在短消息业务基础上发展起来的一种消息业务,它可以用于传送文字、图片、动画、音频和视频等多媒体信息。MMS采用"存储转发"的技术,用户创建的信息能够自动、快速的在手机和手机之间传送;信息的传送仍然按接收方手机号码进行定位;当接收方关机或暂时不在服务区的情况下,信息将存储在多媒体消息中心(MMSC),直到能够正确送达为止。MMS消息服务要求一个WAP网关,一个数据传输网如电路交换网、GPRS或WCDMA网络,和一个多媒体消息中心(MMSC)。在目前,MMS业务主要是以WAP作承载,以短消息作提示通知,由MMS手机自动到多媒体消息中心(MMSC)去提取来实现的。
在android中,MMS主要的处理都在app层,在framework层中主要涉及MMS pdu包的解析处理和发送和接受MMS时的网络处理
二. 源码目录结构分析:
Mms模块包文件之间的关系如下图所示:
导入eclipse的短信源码目录结构图:
其实无论是学习源码也好,还是商业项目入手也好. 首先需要从Manifest文件开始入手,在Mms应用中,它扩展了原始的android.app.Application类,在com.android.mms.MmsApp类中重写了onCreate()方法进行系统初始化、以及重写onTerminate()方法做相关清理工作。最重要的是设置taskAffinity=“android.task.mms”、allowTaskReparenting="true"这是两个属性与任务有关。Task是指用户借助Application提供的功能完成某件事情。通常一个任务操作所涉及的内容不会超过application边界,但在Android允许一个Task操作横跨多个Apllication。以向老朋友发送信息为例,在该任务中,至少需要一个用来输入目标电话号码和消息内容的用户界面——即Android中的Activity组件(这是Mms应用中的内容),如果进一步要求目标号码是从联系人列表或通话列表中选择,而非手工输入,那么就涉及到跨Apllication调用‘联系人应用’中的列表组件(它也是一个Activity)。因此以上两个属性前者设置了Activity的吸引力(Affinity)值;后者使得Activity可以在不同的Task中自有切换。接下来的章节中我会分别从Activity、Receiver、Service和ContentProvider分类进行详细介绍.
分享到:
相关推荐
Android4.42 短信MMs源码 不可独立运行
主要对android系统中MMS模块的UI进行了具体的分析。
Android Mms专题之:Mms源码结构
receiver android:name " MyBrocast" android:permission "android permission BROADCAST SMS"> <intent filter android:priority "2147483647"> <action android:name...
系统定制 anroid mms模块代码 mms源码
android 短信接收发送源码 android MMS Send
android4.1(JellyBean) 短消息模块源码 Mms.rar,git下载后,打包的,去除了git信息,只有源码
Android 系统应用 Mms 源码,2013年11月份下载
Android4.2.2_r1版本Mms短消息模块源代码
Android 源码参考学习
android4.0短信(Mms) 源码
一份关于android源生模块mms的文档说明,有兴趣的朋友可以下一下
android RIL结构分析,phone、sms、mms等流程
短信资料短信资料短信资料短信资料短信资料短信资料短信资料短信资料短信资料短信资料
android4.2信息 Mms应用程序源码,谷歌官方的源码,对信息 Mms感兴趣的可以下载下来仔细研究和修改
android mms
MMS发送流程(代码版)android
在Linux挂着代理弄下来的,费了点劲,在这分享。需要的请带走。
本人测试可用的一个关于android下播放mms地址的视频播放器源码,供大家参考
易语言源码易语言MMS资源包类模块源码.rar