<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>

<channel>
	<title>专注于blackberry &#187; media</title>
	<atom:link href="http://www.inblackberry.com/web/tag/media/feed" rel="self" type="application/rss+xml" />
	<link>http://www.inblackberry.com/web</link>
	<description>blackberry</description>
	<pubDate>Thu, 26 Aug 2010 14:19:35 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.1</generator>
	<language>en</language>
			<item>
		<title>BlackBerry 应用程序开发者指南 第一卷：基础&#8211;第5章 支持的媒体内容（Media Content）</title>
		<link>http://www.inblackberry.com/web/development/docs/developer-guide-vol-1-charpter-5-media-content.html</link>
		<comments>http://www.inblackberry.com/web/development/docs/developer-guide-vol-1-charpter-5-media-content.html#comments</comments>
		<pubDate>Tue, 22 Apr 2008 13:57:00 +0000</pubDate>
		<dc:creator>Taigoo</dc:creator>
		
		<category><![CDATA[文档]]></category>

		<category><![CDATA[api]]></category>

		<category><![CDATA[doc]]></category>

		<category><![CDATA[media]]></category>

		<guid isPermaLink="false">http://www.inblackberry.com/web/development/docs/developer-guide-vol-1-charpter-5-media-content.html</guid>
		<description><![CDATA[<p class="MsoNormal" style="text-align: right" align="right">5</p>
<a name="_Toc125106982">第5</a>章 支持的媒体内容（Media Content）




<p class="MsoNormal">PME内容</p>
<p class="MsoNormal">播放媒体内容</p>
<p]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal" style="text-align: right" align="right"><strong><span lang="EN-US" style="font-size: 36pt">5<o:p></o:p></span></strong></p>
<h1><a name="_Toc125106982"><span style="color: #333399; font-family: 宋体">第</span><span lang="EN-US" style="color: #333399">5</span></a><span><span style="color: #333399; font-family: 宋体">章</span><span style="color: #333399"> </span></span><span><span style="color: #333399; font-family: 宋体">支持的媒体内容（</span><span lang="EN-US" style="color: #333399">Media Content</span></span><span><span style="color: #333399; font-family: 宋体">）</span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h1>
<table class="MsoNormalTable" style="background: #cccccc 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="0">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal"><strong><span lang="EN-US" style="color: #333399">PME</span></strong><strong><span style="color: #333399; font-family: 宋体">内容</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">播放媒体内容</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">监听媒体内容事件</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">创建定制的连接</span></strong></p>
</td>
</tr>
</tbody>
</table>
<h2><a name="_Toc125106983"><span lang="EN-US" style="color: #333399">PME</span></a><span><span style="color: #333399; font-family: 黑体">内容</span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h2>
<p class="MsoNormal"><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备支持</span><span lang="EN-US">PME</span><span style="font-family: 宋体">格式的富（</span><span lang="EN-US">rich</span><span style="font-family: 宋体">）媒体内容。</span></p>
<p class="MsoNormal"><span style="font-family: 宋体">开发者可以使用</span><span lang="EN-US">Plazmic Content Developer&#8217;s Kit for BlackBerry</span><span style="font-family: 宋体">来创建</span><span lang="EN-US">PME</span><span style="font-family: 宋体">内容。这个工具，以及附带的文档可以在</span><span lang="EN-US">Plazmic</span><span style="font-family: 宋体">网站（</span><span lang="EN-US">www.plazmic.com</span><span style="font-family: 宋体">）找到。</span></p>
<p class="MsoNormal"><span lang="EN-US">Media Engine API</span><span style="font-family: 宋体">（在</span><span lang="EN-US">net.rim.plazmic.mediaengine </span><span style="font-family: 宋体">和</span><span lang="EN-US"> net.rim.plazmic.mediaengine.io</span><span style="font-family: 宋体">包中）允许应用程序获取和播放存储在</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备上或网络上的</span><span lang="EN-US">PME</span><span style="font-family: 宋体">内容.     <br /></span><span lang="EN-US"><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" border="0" />Media Engine API</span><span style="font-family: 宋体">支持媒体格式</span><span lang="EN-US">application/x-vnd.rim.pme. Web</span><span style="font-family: 宋体">服务器必须为</span><span lang="EN-US">application/x-vnd.rim.pme</span><span style="font-family: 宋体">设置</span><span lang="EN-US">MIME</span><span style="font-family: 宋体">类型。</span></p>
<h3><a name="_Toc125106984"><span lang="EN-US" style="color: #333399">PME API</span></a><span><span style="color: #333399; font-family: 宋体">概览</span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">下面</span><span lang="EN-US">3</span><span style="font-family: 宋体">个主要类（在</span><span lang="EN-US">net.rim.plazmic.mediaengine</span><span style="font-family: 宋体">包里）提供了加载和播放</span><span lang="EN-US">PME</span><span style="font-family: 宋体">媒体内容的能力。</span></p>
<table class="MsoNormalTable" style="border-collapse: collapse" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal" style="text-align: center" align="center"><strong><span style="font-family: 宋体">类</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal" style="text-align: center" align="center"><strong><span style="font-family: 宋体">描述</span><span lang="EN-US"><o:p></o:p></span></strong></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">MediaManager</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span style="font-family: 宋体">提供从本地或网络上加载媒体内容的方法。</span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">MediaPlayer</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span style="font-family: 宋体">提供播放</span><span lang="EN-US">PME</span><span style="font-family: 宋体">媒体的方法。</span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">MediaException</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span style="font-family: 宋体">为获取或播放媒体的错误提供异常代码。</span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc125106985"><span style="color: #333399; font-family: 宋体">媒体加载</span></a><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span lang="EN-US">Media Engine API</span><span style="font-family: 宋体">允许应用程序使用下面</span><span lang="EN-US">4</span><span style="font-family: 宋体">种协议种的一种加载媒体内容：</span></p>
<table class="MsoNormalTable" style="border-collapse: collapse" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal" style="text-align: center" align="center"><span style="font-family: 宋体">协议</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal" style="text-align: center" align="center"><span style="font-family: 宋体">描述</span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">http://</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">http</span><span style="font-family: 宋体">协议从一个使用</span><span lang="EN-US">HTTP</span><span style="font-family: 宋体">连接网络</span><span lang="EN-US">Web</span><span style="font-family: 宋体">服务器下载内容。这个协议需要一个带有</span><span lang="EN-US">BlackBerry MDS</span><span style="font-family: 宋体">服务的</span><span lang="EN-US">BES</span><span style="font-family: 宋体">（</span><span lang="EN-US">BlackBerry Enterprise Server</span><span style="font-family: 宋体">，</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">企业服务器）</span><span lang="EN-US">.</span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">https://</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">https</span><span style="font-family: 宋体">协议从一个使用</span><span lang="EN-US">HTTPS</span><span style="font-family: 宋体">连接网络</span><span lang="EN-US">Web</span><span style="font-family: 宋体">服务器下载内容。这个协议需要一个带有</span><span lang="EN-US">BlackBerry MDS</span><span style="font-family: 宋体">服务的</span><span lang="EN-US">BES</span><span style="font-family: 宋体">（</span><span lang="EN-US">BlackBerry Enterprise Server</span><span style="font-family: 宋体">，</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">企业服务器）</span><span lang="EN-US">.</span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">Jar:///&lt;pme_file&gt;</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">jar</span><span style="font-family: 宋体">协议加载存储在本地</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备上的</span><span lang="EN-US">jar</span><span style="font-family: 宋体">文件。</span></p>
<p class="MsoNormal"><span lang="EN-US">jar:///sample.pme</span></p>
<p class="MsoNormal"><strong><span style="font-family: 宋体">注意</span></strong><span style="font-family: 宋体">：开始的斜线（</span><span lang="EN-US">/</span><span style="font-family: 宋体">）是需要的。</span></p>
<p class="MsoNormal"><span style="font-family: 宋体">在</span><span lang="EN-US">BlackBerry IDE</span><span style="font-family: 宋体">中，</span><span lang="EN-US">.jar</span><span style="font-family: 宋体">文件必须加入到调用应用程序或应用程序依赖的库的相同项目中。</span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">cod://&lt;module&gt;&lt;pme_file&gt;</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">cod</span><span style="font-family: 宋体">协议加载存储在本地</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备上的</span><span lang="EN-US">cod</span><span style="font-family: 宋体">文件。</span></p>
<p class="MsoNormal"><span lang="EN-US">cod://mediasample/sample.pme</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span style="font-family: 宋体">为使用其他协议，实现定制的</span><span lang="EN-US">Connector</span><span style="font-family: 宋体">。为获得更多信息，参看</span><span lang="EN-US">91</span><span style="font-family: 宋体">页的&#8220;创建定制的</span><span lang="EN-US">Connector&#8221;.</span></p>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">播放状态（</span><span lang="EN-US" style="color: #333399">Playback states</span></strong><strong><span style="color: #333399; font-family: 宋体">）</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span style="font-family: 宋体">为了获取</span><span lang="EN-US">MediaPlayer</span><span style="font-family: 宋体">的当前状态，调用</span><span lang="EN-US">MediaPlayer.getState().</span></p>
<table class="MsoNormalTable" style="border-collapse: collapse" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal" style="text-align: center" align="center"><span style="font-family: 宋体">状态</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal" style="text-align: center" align="center"><span style="font-family: 宋体">描述</span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">UNREALIZED</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">MediaPlayer</span><span style="font-family: 宋体">未准备播放媒体。为了转到</span><span lang="EN-US">REALIZED</span><span style="font-family: 宋体">状态，调用</span><span lang="EN-US">MediaPlayer.setMedia</span><span style="font-family: 宋体">（）</span><span lang="EN-US">.</span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">REALIZED</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">MediaPlayer</span><span style="font-family: 宋体">准备好播放媒体。为了开始播放，并转到</span><span lang="EN-US">STARTED</span><span style="font-family: 宋体">状态，调用</span><span lang="EN-US">MediaPlayer.start().</span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">STARTED</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">MediaPlayer</span><span style="font-family: 宋体">正在播放媒体。为了停止播放和返回到</span><span lang="EN-US">REALIZED</span><span style="font-family: 宋体">状态，调用</span><span lang="EN-US">MediaPlayer.stop().</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">异常</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span lang="EN-US">MediaEngine</span><span style="font-family: 宋体">和</span><span lang="EN-US">MediaManager</span><span style="font-family: 宋体">类的方法抛出一个</span><span lang="EN-US">MediaException</span><span style="font-family: 宋体">异常，这个异常包含了一个标准的</span><span lang="EN-US">HTTP</span><span style="font-family: 宋体">响应代码或者下面异常代码之一。为了获取与异常相联系的错误代码，调用</span><span lang="EN-US">MediaException.getCode().</span></p>
<table class="MsoNormalTable" style="border-collapse: collapse" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal" style="text-align: center" align="center"><span style="font-family: 宋体">异常代码</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal" style="text-align: center" align="center"><span style="font-family: 宋体">描述</span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">INVALID_HEADER</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span style="font-family: 宋体">媒体格式无效。</span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">REQUEST_TIMED_OUT</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span style="font-family: 宋体">请求超时。</span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">INTERRUPTED_DOWNLOAD</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span style="font-family: 宋体">应用程序调用</span><span lang="EN-US">MediaManager.cancel()</span><span style="font-family: 宋体">来取消下载。</span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">UNSUPPORTED_TYPE</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span style="font-family: 宋体">媒体类型（</span><span lang="EN-US">MIME</span><span style="font-family: 宋体">类型）不支持。</span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">UPGRADE_PALYER</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span style="font-family: 宋体">媒体引擎的版本和请求的内容不兼容。</span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">UPGRADE_MEDIA</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span style="font-family: 宋体">媒体引擎的版本不在支持请求的内容。</span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">CHECKSUM_MISMACTH</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span style="font-family: 宋体">求和校验失败，因此媒体内容不能读取。</span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">OUT_OF_BOUNDS</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span style="font-family: 宋体">数组出界，或应用程序试图访问一个文件结尾后的输入流。</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">事件</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span lang="EN-US">MediaListener</span><span style="font-family: 宋体">接口允许应用程序接受或响应下面的事件：</span></p>
<table class="MsoNormalTable" style="border-collapse: collapse" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal" style="text-align: center" align="center"><span style="font-family: 宋体">事件</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal" style="text-align: center" align="center"><span style="font-family: 宋体">描述</span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">MEDIA_REQUEST</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span style="font-family: 宋体">媒体已请求加载，当</span><span lang="EN-US">animation</span><span style="font-family: 宋体">自动请求新内容或当用户点击媒体内容的超连接时，事件发生。</span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">MEDIA_REALIZED</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span style="font-family: 宋体">媒体已经创建播放了。当</span><span lang="EN-US">MediaManager.createMediaManager</span><span style="font-family: 宋体">（）已经调用时发生。</span><span lang="EN-US"> </span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">MEDIA_COMPLETE</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span style="font-family: 宋体">媒体已经加载，并成功播放。</span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">MEDIA_TO</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span style="font-family: 宋体">媒体正在加载。</span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span style="font-family: 宋体">为获得更多信息，参考</span><span lang="EN-US">85</span><span style="font-family: 宋体">页的&#8220;监听</span><span lang="EN-US">Media Engine</span><span style="font-family: 宋体">事件</span><span lang="EN-US">&#8221;.</span></p>
<h2><a name="_Toc125106986"><span style="color: #333399; font-family: 黑体">播放媒体内容</span></a><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h2>
<p class="MsoNormal"><span style="font-family: 宋体">为了获取</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备或网络上的</span><span lang="EN-US">PME</span><span style="font-family: 宋体">内容，使用</span><span lang="EN-US">MediaManager</span><span style="font-family: 宋体">的方法。为了播放已经下载到</span><span lang="EN-US">BlackBerry</span><span style="font-family: 宋体">设备的</span><span lang="EN-US">PME</span><span style="font-family: 宋体">内容，使用</span><span lang="EN-US">MediaPlayer</span><span style="font-family: 宋体">类的方法。</span></p>
<h3><a name="_Toc125106987"><span style="color: #333399; font-family: 宋体">下载内容</span></a><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">为下载</span><span lang="EN-US">PME</span><span style="font-family: 宋体">内容，创建一个</span><span lang="EN-US">MediaManager</span><span style="font-family: 宋体">对象，然后调用</span><span lang="EN-US">MediaManager.createMedia().</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">try</span></strong><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;</span>{</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>Object media = manager.createMedia(</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;http://webserver/sample.pme&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;</span>} </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;</span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">catch</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (IOException ioe) </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;</span>{</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160;</span>System.out.println(</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Error: requested content was not downloaded.&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;</span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;</span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">catch</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (MediaException me) </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;</span>{</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160;</span>System.out.println(</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Error: &#8220; + me.getCode());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;</span>}</span><span lang="EN-US" style="font-family: 宋体"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US" style="font-family: 宋体"><v:shape id="_x0000_i1026" type="#_x0000_t75"><v:imagedata src="file:///C:\DOCUME~1\CONFAC~1.ZHA\LOCALS~1\Temp\msohtml1\01\clip_image003.emz" o:title="" /><o:lock v:ext="edit" aspectratio="f" /></v:shape></span><strong><span style="font-family: 宋体"><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" border="0" />注</span></strong><span style="font-family: 宋体">：</span><span style="font-family: 宋体">下面缺省的协议会被支持</span><span lang="EN-US">:http://,https://.jar://,</span><span style="font-family: 宋体">和</span><span lang="EN-US">cod://.</span><span style="font-family: 宋体">为获得更多信息，参看</span><span lang="EN-US">81</span><span style="font-family: 宋体">页的&#8220;媒体加载&#8221;。</span></p>
<p class="MsoNormal"><span style="font-family: 宋体">第一次调用</span><span lang="EN-US">MediaManager.createMedia()</span><span style="font-family: 宋体">，</span><span lang="EN-US">URL</span><span style="font-family: 宋体">必须是绝对路径，除非首先调用</span><span lang="EN-US">MediaManager.setProperty(&#8220;URI_BASE&#8221;,&lt;base_url&gt;)</span><span style="font-family: 宋体">设置基</span><span lang="EN-US">URL</span><span style="font-family: 宋体">路径。当你之后调用</span><span lang="EN-US">createMedia</span><span style="font-family: 宋体">（）时，前面的</span><span lang="EN-US">URL</span><span style="font-family: 宋体">作为基</span><span lang="EN-US">URL</span><span style="font-family: 宋体">。</span></p>
<p class="MsoNormal" style="margin-left: 42pt"><span lang="EN-US"><o:p>&#160;</o:p></span></p>
<h3><a name="_Toc125106988"><span style="color: #333399; font-family: 宋体">播放</span></a><span><span lang="EN-US" style="color: #333399">PME</span></span><span><span style="color: #333399; font-family: 宋体">内容</span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">为播放设置</span><span lang="EN-US" style="color: #333399">PME</span></strong><strong><span style="color: #333399; font-family: 宋体">对象</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span style="font-family: 宋体">调用</span><span lang="EN-US">MedialPlayer.setMedia().</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">MediaPlayer player = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaPlayer();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">try</span></strong><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">{</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;</span>player.setMedia(media);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">} </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">catch</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (MediaException me)</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">{</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160; </span>System.out.println(</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Error: requested content type is not supported.&#8221;);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><strong><span lang="EN-US" style="color: #333399"><o:p>&#160;</o:p></span></strong></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">获取一个显示</span><span lang="EN-US" style="color: #333399">PME</span></strong><strong><span style="color: #333399; font-family: 宋体">内容的</span><span lang="EN-US" style="color: #333399">UI</span></strong><strong><span style="color: #333399; font-family: 宋体">对象</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span style="font-family: 宋体">调用</span><span lang="EN-US">MediaPlayer.getUI()</span><span style="font-family: 宋体">。转化</span><span lang="EN-US">getUI()</span><span style="font-family: 宋体">返回的一个作为</span><span lang="EN-US">Field</span><span style="font-family: 宋体">的对象，然后将之加入到屏幕来显示。</span><span style="font-family: &#39;Andale Mono&#39;"> <span lang="EN-US"><o:p></o:p></span></span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal"><span lang="EN-US" style="font-family: &#39;andale mono&#39;">add((Field)player.getUI());<o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><strong><span style="color: #333399; font-family: 宋体">开始播放下载的</span><span lang="EN-US" style="color: #333399">PME</span></strong><strong><span style="color: #333399; font-family: 宋体">内容</span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></strong></p>
<p class="MsoNormal"><span style="font-family: 宋体">调用</span><span lang="EN-US">MediaPlayer.start()</span><span style="font-family: 宋体">。</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(player.getState() == MediaPlayer.REALIZED) </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">{</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;</span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">try</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;</span>{</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160; </span>player.start();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;</span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;</span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">catch</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(MediaException me) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160;</span>System.out.println(</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Error occurred during media playback: &quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> +</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;</span>me.getCode() + me.getMessage());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;</span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><span lang="EN-US" style="font-family: 宋体"><o:p></o:p></span></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span lang="EN-US" style="font-family: 宋体"><v:shape id="_x0000_i1027" type="#_x0000_t75"><v:imagedata src="file:///C:\DOCUME~1\CONFAC~1.ZHA\LOCALS~1\Temp\msohtml1\01\clip_image003.emz" o:title="" /><o:lock v:ext="edit" aspectratio="f" /></v:shape></span><strong><span style="font-family: 宋体"><img height="31" alt="" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" border="0" />注</span></strong><span style="font-family: 宋体">：</span><span style="font-family: 宋体">在调用</span><span lang="EN-US">MediaPlayer.start()</span><span style="font-family: 宋体">前检查</span><span lang="EN-US">MediaPlayer</span><span style="font-family: 宋体">的状态，如果媒体播放器不是</span><span lang="EN-US">REALIZED</span><span style="font-family: 宋体">状态，</span><span lang="EN-US">start()</span><span style="font-family: 宋体">方法抛出一个异常。</span></p>
<h3><a name="_Toc125106989"><span style="color: #333399; font-family: 宋体">代码实例</span></a><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span lang="EN-US">MediaSample.java</span><span style="font-family: 宋体">实例从一个</span><span lang="EN-US">Web</span><span style="font-family: 宋体">服务器获取一个</span><span lang="EN-US">PME</span><span style="font-family: 宋体">文件，然后显示它。</span> </p>
<hr style="width: 100%; height: 2px" /><strong><span style="font-family: 宋体">例：</span><span lang="EN-US">MediaSample.java<o:p></o:p></span></strong>
<p>&#160;</p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">/**</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">*</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">MediaSample.java</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">*</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">Copyright</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">(C)</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">2001</span><span lang="EN-US" style="font-size: 10pt; color: #7f7f9f; font-family: &#39;courier new&#39;">-</span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">2005</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">Research</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">In</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">Motion</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">Limited.</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">All</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">rights</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">reserved.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">*/</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">package</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> com.rim.samples.docs.mediasample;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> java.io.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.ui.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.ui.component.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.ui.container.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.system.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.plazmic.mediaengine.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">class</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaSample </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">extends</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> UiApplication {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> main(String[] args) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>MediaSample app = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaSample();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>app.enterEventDispatcher();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaSample() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>pushScreen(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaSampleScreen());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">class</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaSampleScreen </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">extends</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MainScreen {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaSampleScreen() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">super</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>LabelField title = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> LabelField(&#8220;Media Sample&#8221;, LabelField.ELLIPSIS| LabelField.USE_ALL_WIDTH);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>setTitle(title);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>MediaPlayer player = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaPlayer();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>MediaManager manager = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaManager();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">try</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>Object media = manager.createMedia(&#8220;http:</span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">//webserver/SVGFILE.pme&#8221;);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>player.setMedia(media);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>} <span>&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">catch</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (IOException ioe) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">catch</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (MediaException me) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>System.out.println(&#8220;Error during media loading: &#8220;);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>System.out.println(me.getCode());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>System.out.println(me.getMessage());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>add((Field)player.getUI());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">try</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>player.start();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">catch</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(MediaException me) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>System.out.println(&#8220;Error occured during media playback: &#8220;);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>System.out.println(me.getCode());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>System.out.println(me.getMessage());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span> </p>
<hr style="width: 100%; height: 2px" />
<h2><a name="_Toc125106990"><span style="color: #333399; font-family: 黑体">监听媒体引擎事件</span></a><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h2>
<p class="MsoNormal"><span lang="EN-US">MediaListener</span><span style="font-family: 宋体">接口允许应用程序注册接收媒体引擎事件。应用程序可以在注册</span><span lang="EN-US">MediaPlayer</span><span style="font-family: 宋体">和</span><span lang="EN-US">MediaEngine</span><span style="font-family: 宋体">对象上注册监听者。</span></p>
<p class="MsoNormal"><span style="font-family: 宋体">当应用程序实现监听者时，它可以完成以下的动作：</span></p>
<ul>
<li><span style="font-family: 宋体">提供内容下载状态的信息。</span> </li>
<li><span lang="EN-US" style="font-family: wingdings"><span><span style="font: 7pt &#39;Times New Roman&#39;; font-size-adjust: none; font-stretch: normal">&#160;</span></span></span><span style="font-family: 宋体">在后台下载内容，当完成时播放它。</span> </li>
<li><span style="font-family: 宋体">下载一个</span><span lang="EN-US">animation</span><span style="font-family: 宋体">自动请求的内容。</span> </li>
</ul>
<p class="MsoNormal"><span lang="EN-US">MediaListener</span><span style="font-family: 宋体">接口包含一个方法，</span><span lang="EN-US">listen</span><span style="font-family: 宋体">方法。</span></p>
<p class="MsoNormal"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> mediaEvent(Object sender, <o:p></o:p></span></p>
<p class="MsoNormal" style="text-indent: 140.55pt"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> event, <o:p></o:p></span></p>
<p class="MsoNormal" style="text-indent: 140.55pt"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> eventParam, <o:p></o:p></span></p>
<p class="MsoNormal" style="text-indent: 140pt"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">Object data);</span></p>
<table class="MsoNormalTable" style="border-collapse: collapse" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal" style="text-align: center" align="center"><span style="font-family: 宋体">参数</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal" style="text-align: center" align="center"><span style="font-family: 宋体">描述</span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">sender</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span style="font-family: 宋体">本参数引用了发送事件的对象，如</span><span lang="EN-US">MediaPlayer</span><span style="font-family: 宋体">或</span><span lang="EN-US">MediaManager</span><span style="font-family: 宋体">对象。</span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">event</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span style="font-family: 宋体">参数可以是下列事件之一：</span></p>
<ul>
<li>
<div class="MsoNormal" style="margin-left: 42pt; text-indent: -21pt"><span lang="EN-US">MEDIA_REQUESTED:</span><span style="font-family: 宋体">当新的内容请求时发送事件。</span></div>
</li>
<li>
<div class="MsoNormal" style="margin-left: 42pt; text-indent: -21pt"><span lang="EN-US">MEDIA_COMPLETE:</span><span style="font-family: 宋体">当所有计划好的媒体动作完成时触发事件。</span></div>
</li>
<li>
<div class="MsoNormal" style="margin-left: 42pt; text-indent: -21pt"><span lang="EN-US">MEDIA_REALIZED</span><span style="font-family: 宋体">：由</span><span lang="EN-US">MediaManager</span><span style="font-family: 宋体">发送，返回下载的媒体。</span></div>
</li>
<li>
<div class="MsoNormal" style="margin-left: 42pt; text-indent: -21pt"><span lang="EN-US">MEDIA_IO:</span><span style="font-family: 宋体">由</span><span lang="EN-US">MediaPlayer</span><span style="font-family: 宋体">发送，提供现在进度或状态的信息。</span></div>
</li>
</ul>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">eventParam</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span style="font-family: 宋体">不要使用这个参数，因为它可能接收一个任意值。它存在是为了为额外的事件提供一个一致的接口。</span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">data</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span style="font-family: 宋体">当</span><span lang="EN-US">data</span><span style="font-family: 宋体">参数是</span><span lang="EN-US">MEDIA_REQUESTED</span><span style="font-family: 宋体">，</span><span lang="EN-US">data</span><span style="font-family: 宋体">把请求的</span><span lang="EN-US">URL</span><span style="font-family: 宋体">作为一个</span><span lang="EN-US">String</span><span style="font-family: 宋体">对象。</span></p>
<p class="MsoNormal"><span style="font-family: 宋体">当</span><span lang="EN-US">data</span><span style="font-family: 宋体">参数是</span><span lang="EN-US">MEDIA_REALIZED,data</span><span style="font-family: 宋体">引用了创建的媒体对象。</span></p>
<p class="MsoNormal"><span style="font-family: 宋体">当</span><span lang="EN-US">data</span><span style="font-family: 宋体">参数是</span><span lang="EN-US">MEDIA_IO,data</span><span style="font-family: 宋体">引用了一个</span><span lang="EN-US">net.rim.plazmic.mediaengine.io.LoadingStatus</span><span style="font-family: 宋体">对象。</span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc125106991"><span style="color: #333399; font-family: 宋体">监听媒体引擎事件</span></a><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span lang="EN-US">MediaListener</span><span style="font-family: 宋体">接口的实现允许你的应用程序监听一个媒体引擎事件。</span><span lang="EN-US">mediaEvent</span><span style="font-family: 宋体">（）的实现应该处理所有可能的媒体事件。下面的例子使用了一个</span><span lang="EN-US">switch</span><span style="font-family: 宋体">语句来处理可能媒体事件。</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">class</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaListenerImpl </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">implements</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaListener {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> mediaEvent(Object sender, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> event, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> eventParam, Object data) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">switch</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(event) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">case</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MEDIA_REQUESTED:</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Perform action.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">case</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MEDIA_COMPLETE:</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Perform action.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">case</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MEDIA_REALIZED:</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Perform action.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;</span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">case</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MEDIA_IO:</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Perform action.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;</span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc125106992"><span style="color: #333399; font-family: 宋体">注册监听者</span></a><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">为了注册你的监听者，调用</span><span lang="EN-US">MediaPlayer</span><span style="font-family: 宋体">和</span><span lang="EN-US">MediaManager</span><span style="font-family: 宋体">对象上的</span><span lang="EN-US">addMediaListener()</span><span style="font-family: 宋体">方法。</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaListenerImpl _listener = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaListenerImpl();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaPlayer player = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaPlayer();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaManager manager = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaManager();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">player.addMediaListener(_listener);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">manager.addMediaListener(_listener);</span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc125106993"><span style="color: #333399; font-family: 宋体">在后台加载内容</span></a><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">当实现</span><span lang="EN-US">MediaListener</span><span style="font-family: 宋体">时，你可以在背后下载</span><span lang="EN-US">PME</span><span style="font-family: 宋体">内容，并且当下载完成后播放内容。</span></p>
<p class="MsoNormal"><span style="font-family: 宋体">调用</span><span lang="EN-US">MediaManager.createMediaListener</span><span style="font-family: 宋体">（）为将来的播放下载内容。</span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family: 宋体"><v:shape id="_x0000_i1030" type="#_x0000_t75"><v:imagedata src="file:///C:\DOCUME~1\CONFAC~1.ZHA\LOCALS~1\Temp\msohtml1\01\clip_image003.emz" o:title="" /><o:lock v:ext="edit" aspectratio="f" /></v:shape><img height="31" alt="" hspace="hspace" src="http://www.cnblogs.com/images/cnblogs_com/confach/bb_doc_info.GIF" width="34" v:shapes="_x0000_i1030" /></span><strong><span style="font-family: 宋体">注</span></strong><span style="font-family: 宋体">：</span><span style="font-family: 宋体">和</span><span lang="EN-US">createMedia()</span><span style="font-family: 宋体">不一样，</span><span lang="EN-US">createMediaLater()</span><span style="font-family: 宋体">不返回一个媒体内容的对象。</span><span lang="EN-US"><o:p>      <br /></o:p></span></p>
<p class="MsoNormal"><span style="font-family: 宋体">在</span><span lang="EN-US">MediaListener.mediaEvent()</span><span style="font-family: 宋体">中，当请求的内容下载时，加入代码来处理</span><span lang="EN-US">MEDIA_REALIZED</span><span style="font-family: 宋体">事件。为了注册在</span><span lang="EN-US">data</span><span style="font-family: 宋体">参数里指定的内容，调用</span><span lang="EN-US">MediaPlayer.setMedia(data)</span><span style="font-family: 宋体">。为了开始播放，调用</span><span lang="EN-US">MediaPlayer.start</span><span style="font-family: 宋体">（）。</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">manager.createMediaLater(</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;http://webserver/sample.pme&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> mediaEvent(Object sender, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> event, </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> eventParam, Object data) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">switch</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(event) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>&#8230;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">case</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MEDIA_REALIZED:</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">try</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;</span><span>&#160;&#160; </span><span>&#160;</span>player.setMedia(data);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160;</span>player.start();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160;</span>} </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">catch</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(MediaException me) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160;</span>System.out.println(</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Error playing media&#8221; + me.getCode() +&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> +</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160;</span><span>&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;<span>&#160;&#160; </span>me.getMessage());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;</span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p>&#160;</o:p></span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc125106994"><span style="color: #333399; font-family: 宋体">跟踪下载进度</span></a><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">为得到下载进度的信息，使用</span><span lang="EN-US">net.rim.plazmic.mediaengine.io.LoadingStatus</span><span style="font-family: 宋体">类。这个类包含了一些方法来允许你获得媒体内容类型，字节总数，字节读取数，以及内容的源</span><span lang="EN-US">URL</span><span style="font-family: 宋体">。</span></p>
<table class="MsoNormalTable" style="border-collapse: collapse" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal" style="text-align: center" align="center"><span style="font-family: 宋体">状态</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal" style="text-align: center" align="center"><span style="font-family: 宋体">描述</span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">LOADING_STARTED</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span style="font-family: 宋体">加载开始。</span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">LOADING_READING</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span style="font-family: 宋体">数据流正在解析。</span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">LOADING_FINISHED</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span style="font-family: 宋体">加载媒体成功。</span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">LOADING_FAILED</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span style="font-family: 宋体">媒体记载失败</span><span lang="EN-US">.</span></p>
<ul>
<li>
<div class="MsoNormal" style="margin-left: 21pt; text-indent: -21pt"><span style="font-family: 宋体">为获取详细的错误代码，调用</span><span lang="EN-US">getCode().</span><span style="font-family: 宋体">参看</span><span lang="EN-US">82</span><span style="font-family: 宋体">页获得更多详情。</span></div>
</li>
<li>
<div class="MsoNormal" style="margin-left: 21pt; text-indent: -21pt"><span style="font-family: 宋体">为得到异常信息，调用</span><span lang="EN-US">getMessage().</span></div>
</li>
</ul>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><span style="font-family: 宋体">在</span><span lang="EN-US">mediaEvent()</span><span style="font-family: 宋体">的实现里，当</span><span lang="EN-US">MEDIA_IO</span><span style="font-family: 宋体">事件发生时，将</span><span lang="EN-US">data</span><span style="font-family: 宋体">参数里的</span><span lang="EN-US">Object</span><span style="font-family: 宋体">转化为一个</span><span lang="EN-US">LoadingStatus</span><span style="font-family: 宋体">对象。</span></p>
<p class="MsoNormal"><span style="font-family: 宋体">调用</span><span lang="EN-US">LoadingStatus.getStatus()</span><span style="font-family: 宋体">来获取下载的状态，然后处理每个状态。</span></p>
<p class="MsoNormal"><span style="font-family: 宋体">对每个正常的状态，打印一个消息到控制台。</span></p>
<p class="MsoNormal"><span style="font-family: 宋体">对</span><span lang="EN-US">LOADING_FAILED</span><span style="font-family: 宋体">状态，完成下面的动作</span><span lang="EN-US">:</span></p>
<ul>
<li><span style="font-family: 宋体">调用</span><span lang="EN-US">LoadingStatus.getCode()</span><span style="font-family: 宋体">获得错误代码。</span> </li>
<li><span style="font-family: 宋体">调用</span><span lang="EN-US">LoadingStatus.getMessage()</span><span style="font-family: 宋体">获得详细的消息。</span> </li>
<li><span style="font-family: 宋体">调用</span><span lang="EN-US">LoadingStatus.getSource()</span><span style="font-family: 宋体">获得内容的</span><span lang="EN-US">URL</span><span style="font-family: 宋体">字符串。</span> </li>
</ul>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> mediaEvent(Object sender, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> event, </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> eventParam, Object data) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">switch</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(event) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160;&#160; </span>&#8230;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">case</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MEDIA_IO: {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160; </span>&#8230;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>&#8230;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">switch</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(s.getStatus()) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">case</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> LoadingStatus.LOADING_STARTED:</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160;&#160; </span>System.out.println(</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Loading in progress&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">case</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> LoadingStatus.LOADING_READING:</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160;&#160; </span>System.out.println(</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Parsing in progress&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;</span><span>&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">case</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> LoadingStatus.LOADING_FINISHED:</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160;&#160; </span>System.out.println(</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Loading completed&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">case</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> LoadingStatus.LOADING_FAILED:</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160; </span>String errorName = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> code = s.getCode();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">switch</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (code) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">case</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaException.INVALID_HEADER:</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160; </span>errorName = </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Invalid header&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> + </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;\n&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> + s.getSource();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">case</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaException.REQUEST_TIMED_OUT:</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160; </span>errorName = </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Request timed out&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> + </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;\n&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> +</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160; </span>s.getSource();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">case</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaException.INTERRUPTED_DOWNLOAD:</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">case</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaException.UNSUPPORTED_TYPE:</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160; </span>errorName = </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Unsupported type&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> + s.getMessage() + </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;\n&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> + s.getSource();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160;</span><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">default</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">: {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (code &gt; 200) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// A code &gt; 200 indicates an HTTP error</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160;&#160;&#160; </span>errorName = </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;URL not found&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160; </span>} </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">else</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// default unidentified error</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160;&#160;&#160; </span>errorName = </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;Loading Failed&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;</span>errorName += </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;\n&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> + s.getSource() + </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;\n&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> + s.getCode()+ </span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;: &quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> + s.getMessage();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span><span>&#160;</span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>System.out.println(errorName);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160; </span>} </span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// End switch s.getStatus().</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;</span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc125106995"><span style="color: #333399; font-family: 宋体">代码实例</span></a><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span lang="EN-US">MediaSample2.java </span><span style="font-family: 宋体">实例实现了一个监听者在后台下载媒体内容，并显示下载的状态到控制台。</span> </p>
<hr style="width: 100%; height: 2px" /><span style="font-family: 宋体">例：</span><span lang="EN-US">MediaSample2.java</span>
</p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">/**</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">*</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">MediaSample2.java</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">*</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">Copyright</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">(C)</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">2001</span><span lang="EN-US" style="font-size: 10pt; color: #7f7f9f; font-family: &#39;courier new&#39;">-</span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">2005</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">Research</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">In</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">Motion</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">Limited.</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">All</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">rights</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">reserved.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f5fbf; font-family: &#39;courier new&#39;">*/</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">package</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> com.rim.samples.docs.mediasample;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> java.io.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.ui.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.ui.component.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.ui.container.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.device.api.system.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.plazmic.mediaengine.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.plazmic.mediaengine.io.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">class</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaSample2 </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">extends</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> UiApplication {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaPlayer player = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaPlayer();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaManager manager = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaManager();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaListenerImpl </span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_listener</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaListenerImpl();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaSample2Screen </span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_screen</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> main(String[] args) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>MediaSample2 app = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaSample2();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>app.enterEventDispatcher();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaSample2() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_screen</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaSample2Screen();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>pushScreen(</span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">_screen</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span>    <br /><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;</span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">class</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaListenerImpl </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">implements</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaListener {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> mediaEvent(Object sender, </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> event, </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> eventParam, Object data) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">switch</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(event) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">case</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MEDIA_REQUESTED:</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>System.out.println(&#8220;Media requested&#8221;);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">case</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MEDIA_COMPLETE:</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>System.out.println(&#8220;Media completed&#8221;);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">case</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MEDIA_REALIZED:</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">try</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>player.setMedia(data);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>player.start();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">catch</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(MediaException me) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>System.out.println(&#8220;Error during media loading: &#8220; + </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>me.getCode() + me.getMessage());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">case</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MEDIA_IO: {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>LoadingStatus s = (LoadingStatus)data;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">switch</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">(s.getStatus()) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">case</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> LoadingStatus.LOADING_STARTED:</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>System.out.println(&#8220;Loading in progress&#8221;);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">case</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> LoadingStatus.LOADING_READING:</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>System.out.println(&#8220;Parsing in progress&#8221;);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">case</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> LoadingStatus.LOADING_FINISHED:</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>System.out.println(&#8220;Loading completed&#8221;);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">case</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> LoadingStatus.LOADING_FAILED:</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>String errorName = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">int</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> code = s.getCode();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">switch</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (code) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">case</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaException.INVALID_HEADER:</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>errorName = &#8220;Invalid header&#8221; + &#8220;\n&#8221; + s.getSource();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">case</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaException.REQUEST_TIMED_OUT:</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>errorName = &#8220;Request timed out&#8221; + &#8220;\n&#8221; + s.getSource();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">case</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaException.INTERRUPTED_DOWNLOAD:</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">case</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaException.UNSUPPORTED_TYPE:</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>errorName = &#8220;Unsupported type&#8221; + s.getMessage() </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>+ &#8220;\n&#8221; + s.getSource();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">default</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">: {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (code &gt; 200) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// A code &gt; 200 indicates an HTTP error.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>errorName = &#8220;URL not found&#8221;;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">else</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Default unidentified error.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>errorName = &#8220;Loading Failed&#8221;;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>errorName += &#8220;\n&#8221; + s.getSource() + &#8220;\n&#8221;+</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>s.getCode() + &#8220;: &#8220; + s.getMessage();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>System.out.println(errorName);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>} </span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// End switch s.getStatus().</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">break</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">final</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">class</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaSample2Screen </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">extends</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MainScreen {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaSample2Screen() {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">super</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160; </span>LabelField title = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> LabelField(&#8220;Media Sample&#8221;, LabelField.ELLIPSIS | LabelField.USE_ALL_WIDTH);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160; </span>setTitle(title);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160; </span>manager.addMediaListener(_listener);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Change this to the location of a test .pme file.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>manager.createMediaLater(&#8220;http:</span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">//test.rim.com/SVGBS0001.pme&#8221;);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>add((Field)player.getUI());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><v:shape id="_x0000_i1032" type="#_x0000_t75"><v:imagedata src="file:///C:\DOCUME~1\CONFAC~1.ZHA\LOCALS~1\Temp\msohtml1\01\clip_image005.emz" o:title="" /><o:lock v:ext="edit" aspectratio="f" /></v:shape></p>
<hr style="width: 100%; height: 2px" />
<h2><a name="_Toc125106996"><span style="color: #333399; font-family: 黑体">创建一个定制的连接</span></a><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h2>
<p class="MsoNormal"><span lang="EN-US">MediaManager</span><span style="font-family: 宋体">使用一个</span><span lang="EN-US">Connector</span><span style="font-family: 宋体">对象加载媒体，并打开输入流。缺省的</span><span lang="EN-US">Connector</span><span style="font-family: 宋体">支持下列协议</span><span lang="EN-US">:http://.https://,jar://,</span><span style="font-family: 宋体">以及</span><span lang="EN-US">cod://</span><span style="font-family: 宋体">。为了增加支持一个定制的协议或者为了覆写缺省的行为，通过实现</span><span lang="EN-US">net.rim.plazmic.mediaengine.io.Connector</span><span style="font-family: 宋体">接口创建一个定制的</span><span lang="EN-US">Connector</span></p>
<table class="MsoNormalTable" style="border-collapse: collapse" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span style="font-family: 宋体">方法签名</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #d9d9d9 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span style="font-family: 宋体">实现</span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">InputStream getInputStream(String, ConnectionInfo)</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span style="font-family: 宋体">实现本方法返回一个输入流从指定</span><span lang="EN-US">URI</span><span style="font-family: 宋体">读取内容。</span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">void releaseConnection(ConnectionInfo)</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; background: #e6e6e6 0% 50%; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" valign="top" width="284">
<p class="MsoNormal"><span style="font-family: 宋体">实现本方法释放连接。</span><span lang="EN-US">MediaManager</span><span style="font-family: 宋体">调用本方法来通知</span><span lang="EN-US">Connector</span><span style="font-family: 宋体">可以释放连接了。</span></p>
</td>
</tr>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span lang="EN-US">void setProperty(String, String)</span></p>
</td>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 213.05pt; padding-top: 0cm" valign="top" width="284">
<p class="MsoNormal"><span style="font-family: 宋体">实现本方法设置连接指定的属性。</span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc125106997"><span style="color: #333399; font-family: 宋体">实现一个定制的</span></a><span><span lang="EN-US" style="color: #333399">connector</span></span><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">为了完成处理一个定制的协议，实现</span><span lang="EN-US">Connector</span><span style="font-family: 宋体">接口，包含</span><span lang="EN-US">getInputStream</span><span style="font-family: 宋体">（）。为了处理一个标准的协议，调用缺省的</span><span lang="EN-US">Connector</span><span style="font-family: 宋体">。</span></p>
<p class="MsoNormal"><span lang="EN-US">setProperty(String name, String value)</span><span style="font-family: 宋体">的实现设置了指定的属性。在本例中，</span><span lang="EN-US">connector</span><span style="font-family: 宋体">不必设置任何指定的属性，因此</span><span lang="EN-US">setProperty</span><span style="font-family: 宋体">（）的实现调用了</span><span lang="EN-US">Connector</span><span style="font-family: 宋体">上的</span><span lang="EN-US">setProperty</span><span style="font-family: 宋体">（）。</span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">class</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> SampleConnector </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">implements</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Connector {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>Connector delegate; </span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// The default Connector.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>SampleConnector(Connector delegate) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">this</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.delegate = delegate;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> InputStream getInputStream(String uri, ConnectionInfo info)</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">throws</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> IOException, MediaException {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>InputStream input = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (uri.startsWith(</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;myprotocol://&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">)) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Perform special tasks.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>info.setConnection(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MyProtocolConnection());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>info.setContentType(</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;application/x-vnd.rim.pme&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// openMyInputStream() is a custom method that opens</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">//stream for &quot;myprotocol://&quot;.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>input = openMyInputStream(uri);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>} </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">else</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>input = delegate.getInputStream(uri, info);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> input;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> releaseConnection(ConnectionInfo info)</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">throws</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> IOException, MediaException {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>Object o = info.getConnection();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (o </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">instanceof</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MyProtocolConnection) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>((MyProtocolConnection)o).close(); </span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Perform cleanup.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>} </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">else</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>{</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>delegate.releaseConnection(info);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> setProperty(String property, String value) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>delegate.setProperty(property, value);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<h3><a name="_Toc125106998"><span style="color: #333399; font-family: 宋体">注册一个定制的连接器</span></a><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span style="font-family: 宋体">在你的主要方法里，调用</span><span lang="EN-US">MediaManager.setConnector()</span><span style="font-family: 宋体">注册你的定制的连接器。</span></p>
<table class="MsoTableGrid" style="background: #e6e6e6 0% 50%; border-collapse: collapse; moz-background-clip: -moz-initial; moz-background-origin: -moz-initial; moz-background-inline-policy: -moz-initial" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td style="padding-right: 5.4pt; padding-left: 5.4pt; padding-bottom: 0cm; width: 426.1pt; padding-top: 0cm" valign="top" width="568">
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">MediaManager manager = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MediaManager();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">manager.setConnector(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> CustomPMEConnector(manager.getDefaultConnector()));</span></p>
</td>
</tr>
</tbody>
</table>
<h3><a name="_Toc125106999"><span style="color: #333399; font-family: 宋体">代码实例</span></a><span lang="EN-US" style="color: #333399"><o:p></o:p></span></h3>
<p class="MsoNormal"><span lang="EN-US">CustomPMEConnector.java</span><span style="font-family: 宋体">实例为实现一个定制的连接器提供了一个框架。</span></p>
<hr style="width: 100%; height: 2px" />
<p class="MsoNormal"><span lang="EN-US" style="font-family: 宋体"></span>&#160;</p>
<p class="MsoNormal"><span style="font-family: 宋体">例：</span><span lang="EN-US">CustomPMEConnector.java</span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">/*</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">* CustomPMEConnector.java</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">* Copyright (C) 2003-2005 Research In Motion Limited. All rights reserved.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">*/</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">package</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> com.rim.samples.docs.mediasample;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> java.io.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.plazmic.mediaengine.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">import</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> net.rim.plazmic.mediaengine.io.*;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p>&#160;</o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">class</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> CustomPMEConnector </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">implements</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Connector {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> Connector delegate;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> InputStream </span><span lang="EN-US" style="font-size: 10pt; color: #0000c0; font-family: &#39;courier new&#39;">input</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>CustomPMEConnector(Connector delegate)</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>{</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">this</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">.delegate = delegate;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> InputStream getInputStream(String uri, ConnectionInfo info)</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">throws</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> IOException, MediaException </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>{</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (uri.startsWith(</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;myprotocol://&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">))</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>{</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Perform special tasks.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>info.setConnection(</span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">new</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MyProtocolConnection());</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>info.setContentType(</span><span lang="EN-US" style="font-size: 10pt; color: #2a00ff; font-family: &#39;courier new&#39;">&quot;application/x-vnd.rim.pme&quot;</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// OpenMyInputStream() is a custom method that opens</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">//stream for &#8220;myprotocol://&#8221;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>input = openMyInputStream(uri);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>} </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">else</span></strong><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>{</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>input = delegate.getInputStream(uri, info);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> input;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">private</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> InputStream openMyInputStream(String uri)</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>{</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>InputStream input = </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">null</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// @todo: open stream here</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">return</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> input;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> releaseConnection(ConnectionInfo info)</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">throws</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> IOException, MediaException</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>{</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>Object o = info.getConnection();</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">if</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> (o </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">instanceof</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MyProtocolConnection)</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>{</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>((MyProtocolConnection)o).close(); </span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Perform cleanup.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">else</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>{</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span>delegate.releaseConnection(info);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> setProperty(String property, String value) {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>delegate.setProperty(property, value);</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// Inner class that defines the connection class.</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">static</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">class</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MyProtocolConnection {</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> MyProtocolConnection()</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>{</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// &#8230;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span></span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">public</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> </span><strong><span lang="EN-US" style="font-size: 10pt; color: #7f0055; font-family: &#39;courier new&#39;">void</span></strong><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"> close() </span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>{</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span></span><span lang="EN-US" style="font-size: 10pt; color: #3f7f5f; font-family: &#39;courier new&#39;">// &#8230;</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160;&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;"><span>&#160;&#160;&#160; </span>}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<p class="MsoNormal" style="text-align: left" align="left"><span lang="EN-US" style="font-size: 10pt; color: black; font-family: &#39;courier new&#39;">}</span><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p></o:p></span></p>
<ul>
<li><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><span style="color: red; font-style: italic">Last Updated:2008年4月18日</span></span> </li>
<li><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><span style="color: red; font-style: italic">Last Updated:2007年1月10日</span></o:p></span> </li>
<li><span lang="EN-US" style="font-size: 10pt; font-family: &#39;courier new&#39;"><o:p><span style="color: red; font-style: italic">Last Updated:2006年4月28日</span>        <br /></o:p></span></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.inblackberry.com/web/development/docs/developer-guide-vol-1-charpter-5-media-content.html/feed</wfw:commentRss>
		</item>
	</channel>
</rss>

<!-- Dynamic Page Served (once) in 1.714 seconds -->
