多媒體本身有兩個方面,和所有現代技術一樣它是由硬件和軟件,或機器和思想混合組成。可以將多媒體技術和功能在概念上區分為控制系統和信息。 多媒體之所以能夠實現是依靠數字技術。多媒體代表數字控制和數字媒體的匯合,電腦是數字控制系統,而數字媒體是當今音頻和視頻最先進的存儲和傳播形式。
在移動短信服務方面,也存在一個多媒體信息,不過全稱為多媒體信息服務,MMS(Multimedia Message Service)即多媒體信息服務,是目前短信技術開發最高標准的一種。它最大的特色就是可以支持多媒體功能,借助高速傳輸技術EDGE(Enhanced Data rates for GSM Evolution)和GPRS,以WAP為載體傳送視頻片段、圖片、聲音和文字,不僅可以在手機之間進行多媒體傳輸,而且可以在手機和電腦之間傳輸。
本文我們主要講的是:多媒體信息即時通訊功能,也就是這個屬於即時通訊的一種,最為直白一點這個是一種功能,也就是一個SDK或者API接口。是基於IP網絡的通訊方式,支持兩人或多人之間的文字、圖片、語音、視頻等形式的消息傳遞,比傳統短信溝通更靈活方便、及時、資費低,支持離線消息管理、群組管理和群組消息廣播等。特別是現在的互聯網創業者,只要接入了這個功能接口(AOI或者SDK),你的應用就可以具備通訊功能。
筆者使用的是雲之訊的接口,這里我就以他為例子進行介紹了,先節選一下他們的官網介紹:
靈活多樣
支持用戶自定義擴展信息種類,包括文本、語音、視頻、附件、名片、表情、位置信息等。
多終端
支持多終端、跨平台(APP、Windows、Android)通訊,無需改變開發習慣,即可快速接入通訊服務。
安全可靠
基於分布式的雲端網絡傳輸存儲消息,嚴密的安全審查機制,信息傳輸更安全快速。
說句實在話,現在哪個平台提供的接口不是這樣的,以上信息僅作參考啊,我們還是去看看他們的文檔使用情況吧。
1. 注冊消息監聽器
/**
* 注冊消息監聽器
* @param messageListener MessageListener監聽器實例
* @return void
*/
UCSMessage.addMessageListener (MessageListener messageListener);
2. 發送IM消息
/**
* 發送IM消息
* @param receiver 接收方的Client賬號或者是群組id
* @param text 發送文本內容。最大長度為500
* @param filePath 發送的附件全路徑
* @param msgType 開發者自定義消息類型(1:文本,支持最大文本長度500
2:圖片,支持jpg、jpeg、png、bmp格式
3:音頻,只支持amr格式
4:視頻
10-19:自定義文本
20-29:自定義附件)
* @return NSString 消息id
*/
UCSMessage.sendUcsMessage ( String receiver, String text, String filePath , Int msgType);
3. 開始錄制音頻
/**
* 開始錄制音頻
* @param filePath 保存音頻文件的全路徑
* @param recordListener RecordListener實例,錄音停止時會通過該回調監聽器的 onFinishedRecordingVoice(int duration)函數返回並還有錄音時長
* @return boolean true錄制語音成功;false錄制語音失敗。
*/
UCSMessage.startVoiceRecord (String filePath,RecordListener recordListener );
4. 停止錄制語音
/**
* 停止錄制音頻
* @param
* @return void
*/
UCSMessage.stopVoiceRecord ();
5. 播放語音
/**
* 播放語音
* @param filePath 播放音頻文件的全路徑
* @param recordListener 播放錄音結束后會通過該類的onFinishedPlayingVoice()函數返回
* @return void
*/
UCSMessage.startPlayerVoice ( String filePath,RecordListener recordListener)
6. 停止播放語音
/**
* 停止播放語音
* @param
* @return void
*/
UCSMessage.stopPlayerVoice ();
7. 獲取語音時長
/**
* 獲取語音時長
* @param filePath 音頻文件的全路徑
* @return long 秒級別的文件時長
*/
UCSMessage.getVoiceDuration(String filePath)
8. 下載附件
/**
* 下載附件
* @param fileUrl 下載文件的Url
* @param filePath 文件保存的本地路徑
* @param msgId 接收到消息的id,與UcsMessage相關的消息
* @param fileListener 文件下載進度監聽器MessageListener實例
* @return void
*/
UCSMessage.downloadAttached (String fileUrl,String filePath,String msgId,MessageListener fileListener)
總得來說這些接口還是蠻簡單,歸類起來就是8大功能:
1. 注冊消息監聽器
2. 發送IM消息
3. 開始錄制音頻
4. 停止錄制語音
5. 播放語音
6. 停止播放語音
7. 獲取語音時長
8. 下載附件