彩信的媒体大概是这样:
WorkingMessage里有个SlideshowModel
SlideshowModel里一队列SlideModel
SlideModel 是一个队列的MediaModel
MediaModel,可以衍生出AudioModel,RegionMediaModel。
RegionMediaModel包含TextModel,ImageModel,VideoModel这三个分类。
创建MediaModel的构造函数
public MediaModel(Context context, String tag, String contentType,
String src, Uri uri) throws MmsException {
mContext = context;
mTag = tag;
mContentType = contentType;
mSrc = src;
mUri = uri;
initMediaSize();
mMediaActions = new ArrayList<MediaAction>();
}
public MediaModel(Context context, String tag, String contentType,
String src, byte[] data) {
if (data == null) {
throw new IllegalArgumentException("data may not be null.");
}
mContext = context;
mTag = tag;
mContentType = contentType;
mSrc = src;
mData = data;
mSize = data.length;
mMediaActions = new ArrayList<MediaAction>();
}
public MediaModel(Context context, String tag, String contentType,
String src, DrmWrapper wrapper) throws IOException {
mContext = context;
mTag = tag;
mContentType = contentType;
mSrc = src;
mDrmObjectWrapper = wrapper;
mUri = DrmUtils.insert(context, wrapper);
mSize = wrapper.getOriginalData().length;
mMediaActions = new ArrayList<MediaAction>();
}
mediaModel里面比较重要的的几个成员:
protected String mTag;
protected String mSrc;
protected String mContentType;
private Uri mUri;
private byte[] mData;
protected int mSize;
Tag是类型标签。在SmilHelper里。
public static final String ELEMENT_TAG_TEXT = "text";
public static final String ELEMENT_TAG_IMAGE = "img";
public static final String ELEMENT_TAG_AUDIO = "audio";
public static final String ELEMENT_TAG_VIDEO = "video";
public static final String ELEMENT_TAG_REF = "ref";
mSrc 文件名
mContentType在frameworks/base/core/java/com/google/android/mms/ContentType里定义,比如
public static final String TEXT_PLAIN = "text/plain";
public static final String TEXT_HTML = "text/html";
public static final String IMAGE_JPEG = "image/jpeg";
public static final String IMAGE_JPG = "image/jpg";
public static final String VIDEO_UNSPECIFIED = "video/*";
public static final String VIDEO_3GPP = "video/3gpp";
等
uri不说了。
data 是byte[] 的数据
size是文件长度。
。
彩信的单个附件的uri,
从onActivityResult得到。
像拍照片的uri来的最容易,是Uri uri = Uri.fromFile(file);
是已经有了file,再来得到uri..太邪恶了!
分享到:
相关推荐
读取异常修复异常中抱怨的事情再试一次意识到通过“修复” URL 以便 Java 将根据 rfc3986 (java.net.URI) 接受它,您正在更改字节。 它与原始版本不完全相同。 大多数情况下,这不会导致任何可测量的差异,但有您的...
Spring+Jersey+Mybatis小实例,为了搭建这个折腾了两天,其中一天是因为jar包版本引起的,一直报异常:java.lang.AbstractMethodError: javax.ws.rs.core.UriBuilder.uri(Ljava/lang/String;)Ljavax/ws/rs/core/...
org.springframework.beans.NotWritablePropertyException: Invalid property 'URIType' of bean class [com.alibaba.citrus.service.uribroker.uri.GenericURIBroker]: Bean property 'URIType' is not writable ...
This is a simple Uri parser. TODO : encode/decode
本文实例讲述了C#利用System.Uri转URL为绝对地址的方法。分享给大家供大家参考。具体分析如下: 在使用ASPOSE.Word生成Word文档时可以通过InsertHtml(html)来将图文信息写入Word文档(图片内嵌),但要求html里图片的...
数据库共享的例子,由 Provider提供
方法二: 代码如下://判断当前系统是否支持Java AWT Desktop扩展 if(java.awt.Desktop.isDesktopSupported()){ try{ //创建一个URI实例,注意不是URL java.net.URI uri=java.net.URI.create(“//www.j
org.springframework.beans.NotWritablePropertyException: Invalid property 'URIType' of bean class [com.alibaba.citrus.service.uribroker.uri.GenericURIBroker]: Bean property 'URIType' is not writable or...
vscode-uri 该模块包含VS Code及其扩展使用的URI实现。 它支持将字符串解析为scheme , authority , path , query和fragment URI组件,如下面所定义: : foo://example.com:8042/over/there?name=ferret#nose ...
Network.URI.Static Network.URI.Static,允许您以类型安全的方式声明静态URI。 使用基本模块,当声明静态URI时,您需要使用Maybe URI或使用URI并放弃类型安全性。 safeButWrappedInMaybeURI :: Maybe ...
Uri playUri = Uri.parse("[url=]file:///sdcard/download/everything.mp3[/url]"); returnIt = new Intent(Intent.ACTION_VIEW, playUri); //发送附件 Intent it = new Intent(Intent.ACTION_SEND); it.putExtra...
个人在网上收集的资料,并非个人创作,整理好供大家一起分享。 一、 Dojo学习笔记(1. 模块与包) 1 二、 Dojo学习笔记(2....三、 Dojo学习笔记(3....四、 Dojo学习笔记(4.... dojo.graphics.color & dojo.uri.Uri) 33
详细代码如下: [c-sharp:nogutter] view plaincopyprint?...13. clientSocket.Connect(URI.Host, URI.Port); 14. StringBuilder RequestHeaders = new StringBuilder();//用来保存HTML协议头部信息
该应用发送GET请求被所述定义的URL updater_server_url资源(或lineage.updater.uri系统属性),并预计作为响应一个JSON具有以下结构: { " response " : [ { " datetime " : 1230764400 , " filename " : " ...
该应用发送GET请求被所述定义的URL updater_server_url资源(或lineage.updater.uri系统属性),并预计作为响应一个JSON具有以下结构: { " response " : [ { " datetime " : 1230764400 , " filename " : " ...
spring boot项目,使用springdata来操作数据库mongodb
C# 编写的主题蜘蛛程序,指定种子网站和主题词
(完整版)JAVA利用HttpClient进行POST请求(HTTPS).doc
可以快速查找android.provider包中所有类的中的URI里面的详细内容,当进入详细内容时 内容没有完全显示时 你可以点击列进行展开 你也可以单击你想看的那行内容 查看那一行的具体信息