保存在沙盒中,例如圖像、圖標(biāo)、聲音、屬性列表、文本文件等。
[0032]對(duì)于使用1S系統(tǒng)的移動(dòng)設(shè)備,若需要在該移動(dòng)設(shè)備上實(shí)現(xiàn)圖片類型的媒體文件的傳送,一種可能的實(shí)現(xiàn)方案是:對(duì)于所有類型的媒體文件,均采用DLNA技術(shù)并基于UPnP協(xié)議實(shí)現(xiàn)媒體文件傳送。具體地,移動(dòng)設(shè)備上的第三方應(yīng)用程序獲取待傳送的媒體文件在1S文件系統(tǒng)應(yīng)用程序沙盒中的存儲(chǔ)路徑,根據(jù)該存儲(chǔ)路徑從相應(yīng)的1S文件系統(tǒng)應(yīng)用程序沙盒中獲取該媒體文件的NSData類型的數(shù)據(jù)(即媒體文件二進(jìn)制數(shù)據(jù)),將該數(shù)據(jù)緩存到該第三方應(yīng)用程序的沙盒中,然后將該數(shù)據(jù)在該第三方應(yīng)用程序的沙盒中的存儲(chǔ)路徑發(fā)送給UPnP協(xié)議處理單元,UPnP協(xié)議處理單元根據(jù)存儲(chǔ)路徑獲取媒體文件的二進(jìn)制數(shù)據(jù),將獲取到的二進(jìn)制數(shù)據(jù)通過移動(dòng)設(shè)備與電視之間的連接傳送給電視。這種媒體文件傳送方式,經(jīng)過了“讀-寫-讀”的過程。然而,對(duì)于較大的音視頻文件來說,“讀-寫-讀”的過程耗時(shí)較長(zhǎng),用戶體驗(yàn)較差。
[0033]為了在使用1S系統(tǒng)的移動(dòng)設(shè)備上實(shí)現(xiàn)各種類型的媒體文件的傳送,同時(shí)又要保證媒體文件傳送效率,對(duì)此,本發(fā)明實(shí)施例提供了一種媒體文件傳送方案,對(duì)圖片文件和音視頻文件采用不同的傳送方法,在實(shí)現(xiàn)對(duì)各種類型的媒體文件實(shí)現(xiàn)傳送的同時(shí),與上述可能的實(shí)現(xiàn)方案相比,還能在媒體文件傳送過程中減少耗時(shí),進(jìn)而改善用戶體驗(yàn)。
[0034]具體地,本發(fā)明實(shí)施例中,對(duì)于圖片類型的媒體文件,可以使用基于UPnP協(xié)議實(shí)現(xiàn)的傳送方式,對(duì)于音視頻類型的媒體文件,可以使用基于Airplay協(xié)議實(shí)現(xiàn)的傳送方式。
[0035]應(yīng)用本發(fā)明實(shí)施例提供的媒體文件傳送方案時(shí),可以預(yù)先在使用1S系統(tǒng)的移動(dòng)設(shè)備上安裝用于實(shí)現(xiàn)本發(fā)明實(shí)施例提供的媒體文件傳送方法的應(yīng)用程序。此后,用戶可以在啟動(dòng)該應(yīng)用程序后,可以在該應(yīng)用程序提供的用戶界面上選擇想要傳送的媒體文件類型,該應(yīng)用程序根據(jù)用戶選取的媒體文件類型,獲取存儲(chǔ)在該移動(dòng)設(shè)備上的該類型的媒體文件列表,供用戶選取想要傳送的媒體文件。該應(yīng)用程序可支持UPnP協(xié)議或者其他能夠?qū)崿F(xiàn)圖片類型媒體文件傳送的協(xié)議,通過該應(yīng)用程序安裝過程,可將UPnP協(xié)議或者其他能夠?qū)崿F(xiàn)圖片類型媒體文件傳送的協(xié)議配置在該移動(dòng)設(shè)備中??蛇x地,該應(yīng)用程序還可以提供檢測(cè)到的可提供服務(wù)的遠(yuǎn)程終端設(shè)備列表,如電視等終端設(shè)備,以供用戶選擇其中的終端設(shè)備作為接收媒體文件的目標(biāo)設(shè)備。
[0036]下面結(jié)合圖1對(duì)本發(fā)明實(shí)施例提供的媒體文件傳送流程進(jìn)行詳細(xì)說明。
[0037]參見圖1,為本發(fā)明的實(shí)施例提供的媒體文件傳送方法的流程示意圖。在實(shí)現(xiàn)該流程之前,移動(dòng)設(shè)備與終端設(shè)備之間需要建立連接,其建立連接的過程可采用多種方式實(shí)現(xiàn),本發(fā)明實(shí)施例對(duì)此不作限制。
[0038]如圖所示,媒體文件傳送流程可包括如下步驟:
[0039]步驟101:獲取移動(dòng)設(shè)備中存儲(chǔ)的待傳送的媒體文件以及所述待傳送的媒體文件的類型,所述移動(dòng)設(shè)備工作于1S系統(tǒng)。
[0040]其中,工作于1S系統(tǒng)的移動(dòng)設(shè)備可以包括蘋果手機(jī)、蘋果平板電腦等移動(dòng)設(shè)備。
[0041]該步驟中,應(yīng)用程序可根據(jù)用戶選擇的要傳送的媒體文件類型獲取媒體文件類型;根據(jù)獲取到的媒體文件類型調(diào)用1S系統(tǒng)中的ALAssets API,得到所述移動(dòng)設(shè)備中存儲(chǔ)的相應(yīng)類型的媒體文件的列表;獲取所述媒體文件列表中被選擇作為待傳送的媒體文件。
[0042]例如,用戶啟動(dòng)該應(yīng)用程序后,該應(yīng)用程序可提供如圖2所示的用戶界面。用戶可通過該用戶界面選擇傳送圖片類型媒體文件,也可以選擇傳送音視頻類型媒體文件。若用戶通過該用戶界面選擇傳送圖片文件,應(yīng)用程序則調(diào)用1S系統(tǒng)中的ALAssets API,得到該移動(dòng)設(shè)備中存儲(chǔ)的所有圖片文件信息列表、提取縮略圖,并將其展示在用戶界面上供用戶瀏覽選擇,如圖3所示,該用戶界面可呈現(xiàn)出圖片文件名稱、圖片的縮略圖,還可進(jìn)一步呈現(xiàn)描述圖片的文字信息;若用戶通過該用戶界面選擇傳送音視頻文件,則應(yīng)用程序則調(diào)用1S系統(tǒng)中的ALAssets API,得到該移動(dòng)設(shè)備中存儲(chǔ)的所有音視頻文件信息列表,并將其展示在用戶界面上供用戶瀏覽選擇,如圖4所示,該用戶界面可呈現(xiàn)音視頻文件的名稱,還可呈現(xiàn)描述音視頻文件的文字信息。
[0043]步驟102:根據(jù)待傳送的媒體文件的類型,確定與待傳送的媒體文件類型對(duì)應(yīng)的傳送方式;其中,若待傳輸?shù)拿襟w文件為圖片文件,則確定使用第一傳送方式,若待傳送的媒體文件為音視頻文件,則確定使用第二傳送方式。
[0044]優(yōu)選地,所述第一傳送方式為基于UPnP協(xié)議實(shí)現(xiàn)的傳送方式,所述第二傳送方式為基于Airplay協(xié)議實(shí)現(xiàn)的傳送方式。由于僅使用基于Airplay協(xié)議實(shí)現(xiàn)的方式不能實(shí)現(xiàn)圖片文件的傳送,而僅使用基于UPnP協(xié)議實(shí)現(xiàn)的傳送方式對(duì)于音視頻文件傳送效率低、時(shí)間長(zhǎng)、用戶體驗(yàn)差,因此,將上述兩種方法相結(jié)合使用,能夠?qū)崿F(xiàn)對(duì)圖片和音視頻文件的高效率傳送。
[0045]步驟103:根據(jù)確定出的傳送方式將待傳送的媒體文件傳送給終端設(shè)備。
[0046]在該步驟中,所述根據(jù)確定出的第一傳送方式將待傳送的圖片文件傳送給終端設(shè)備,具體包含以下過程:
[0047]I)根據(jù)被選擇作為待傳送的圖片文件調(diào)用1S系統(tǒng)的ALAsset API,得到所述待傳送的圖片文件的二進(jìn)制數(shù)據(jù),將所述二進(jìn)制數(shù)據(jù)存儲(chǔ)到緩存區(qū)域。即根據(jù)被選擇作為待傳送的圖片文件調(diào)用該圖片文件在1S系統(tǒng)應(yīng)用程序沙盒中的存儲(chǔ)路徑,根據(jù)該路徑獲取該圖片文件的二進(jìn)制數(shù)據(jù)。然后,將所述二進(jìn)制數(shù)據(jù)存儲(chǔ)到本發(fā)明實(shí)施例所提供的應(yīng)用程序的沙盒中。
[0048]2)根據(jù)所述二進(jìn)制數(shù)據(jù)在所述緩存區(qū)域的存儲(chǔ)路徑從所述緩存區(qū)域獲取二進(jìn)制數(shù)據(jù)。也就是將該二進(jìn)制數(shù)據(jù)在應(yīng)用程序的沙盒中的存儲(chǔ)路徑發(fā)送給UPnP協(xié)議處理單元,UPnP協(xié)議處理單元根據(jù)存儲(chǔ)路徑獲取媒體文件的二進(jìn)制數(shù)據(jù)。
[0049]3)將獲取到的二進(jìn)制數(shù)據(jù)通過所述移動(dòng)設(shè)備與所述終端設(shè)備之間的第一連接傳送給所述終端設(shè)備。UPnP協(xié)議處理單元將獲取的二進(jìn)制數(shù)據(jù)傳送至終端設(shè)備。所述第一連接為基于UPnP協(xié)議實(shí)現(xiàn)的連接。
[0050]參見圖6,UPnP協(xié)議是一個(gè)多層協(xié)議構(gòu)成的框架體系,每一層都以相鄰的下層為基礎(chǔ),同時(shí)又是相鄰上層的基礎(chǔ)。其中,最下面的IP層和TCP (Transmiss1n ControlProtocol,傳輸控制協(xié)議)層,負(fù)責(zé)設(shè)備的IP地址;第三層是HTTP (Hyper Text TransferProtocol,超文本傳輸協(xié)議)及其衍生協(xié)議,這一層屬于傳送協(xié)議層。傳送的是內(nèi)容都是經(jīng)過“封裝”后,存放在特定的XML(Extensible Markup Language,可擴(kuò)展標(biāo)記語言)文件中的。對(duì)應(yīng)的SSDP (Simple Service Discovery Protocol,簡(jiǎn)單服務(wù)發(fā)現(xiàn)協(xié)議)、GENA (Generic Event Notificat1n Architecture,通用事件通知體系架構(gòu))、SOAP (SimpleObject Access Protocol,簡(jiǎn)單對(duì)象訪問協(xié)議)指的是保存在XML文件中的數(shù)據(jù)格式。通過前三層,UPnP協(xié)議已經(jīng)獲得了設(shè)備的IP地址和傳送信息。第四層是UPnP設(shè)備體系定義,僅僅是一個(gè)抽象的、公用的設(shè)備模型,任何UPnP設(shè)備都必須使用這