應用于移動終端的文件快速傳輸的方法及其系統的制作方法
【專利摘要】本發明公開了一種應用于移動終端的文件快速傳輸的方法及其系統,所述方法包括步驟:將要傳輸的文件按預設規則分割成至少兩個文件塊;對所述至少兩個文件塊進行編號;向業務服務器發起網絡請求;通過靜態服務器對編號后的所述至少兩個文件塊進行并行發送。本發明將業務和文件傳輸進行分離,同時將文件分塊發送,大大提高了文件傳輸的速度和成功率,節省了移動終端的流量。
【專利說明】
應用于移動終端的文件快速傳輸的方法及其系統
技術領域
[0001]本發明涉及移動終端領域,尤其涉及一種應用于移動終端的文件快速傳輸的方法及其系統。
【背景技術】
[0002]移動終端網絡具有不穩定缺點,在進行文件傳輸的時候,經常會由于1異常或者超時導致文件發送一部分后就失敗了,用戶下次重新發送的時候會重新發送整個文件。這種方式無疑會浪費用戶的流量,同時也降低了用戶對該App的好感,從而導致App的用戶留存率極低。
[0003]因此,對于這類需要傳輸文件的手機端應用,需要從用戶角度和手機端網絡出發,提高用戶傳輸文件的成功率,并最大程度節省用戶的流量使用。
【發明內容】
[0004]本發明的主要目的在于提出一種應用于移動終端的文件快速傳輸的方法及其系統,旨在解決移動終端文件傳輸的成功率低、流量大的問題。
[0005]為實現上述目的,本發明提供的一種應用于移動終端的文件快速傳輸的方法,包括步驟:向業務服務器發起網絡請求;將要傳輸的文件按預設規則分割成至少兩個文件塊;對所述至少兩個文件塊進行編號;通過靜態資源服務器對編號后的所述至少兩個文件塊進行并行發送。
[0006]可選的,該方法之后還包括步驟:根據所述至少兩個文件塊的發送結果,對發送失敗的文件塊進行重新發送。
[0007]可選的,對發送失敗的文件塊重新發送的次數不超過預設的次數。
[0008]可選的,該方法還包括步驟:獲取所述至少兩個文件塊的發送結果,并在所述至少兩個文件塊都發送成功時通知用戶。
[0009]可選的,在通過靜態資源服務器對編號后的所述至少兩個文件塊進行并行發送時,還包括:采用狀態機對文件傳輸的各個階段進行分離,并對分離后的各個階段進行管理。
[0010]其中,所述各個階段包括:初始化階段、預處理階段、許可獲取階段、文本信息傳送階段、與業務服務器確認階段。
[0011]此外,為實現上述目的,本發明還提出一種應用于移動終端的文件快速傳輸的系統,包括:文件分割模塊,用于將所述文件按預設規則分割成至少兩個文件塊;文件編號模塊,對所述至少兩個文件塊進行編號;網絡請求管理模塊,用于向業務服務器發起網絡請求;文件傳輸模塊,用于通過靜態資源服務器對編號后的所述至少兩個文件塊進行并行發送。
[0012]可選的,該系統還包括塊文件重發模塊,用于根據所述至少兩個文件塊的發送結果,對發送失敗的文件塊進行重新發送。
[0013]可選的,該系統還包括文件發送通知模塊,用于獲取所述至少兩個文件塊的發送結果,并在所述至少兩個文件都發送成功時通知用戶。
[0014]可選的,該系統還包括文件管理模塊,用于采用狀態機對文件傳輸的各個階段進行分離,并對分離后的各個階段進行管理。
[0015]本發明提出的應用于移動終端的文件快速傳輸的方法和移動終端,采用分塊無序文件傳輸的方式,并采用業務服務器和靜態資源服務器對業務和文件傳輸進行隔離,增加移動終端文件傳輸的成功率,同時也節約了用戶重發的流量。
【附圖說明】
[0016]圖1為實現本發明各個實施例的移動終端的一個可選的硬件結構示意圖;
[0017]圖2為本發明第一實施例的應用于移動終端的文件快速傳輸的方法流程圖;
[0018]圖3為本發明第二實施例采用的文件傳輸階段管理示意圖;
[0019]圖4為本發明第三實施例的應用于移動終端的文件快速傳輸的操作流程圖;
[0020]圖5為本發明第四實施例的應用于移動終端的文件快速傳輸的系統的結構示意圖;
[0021]圖6為本發明第五實施例的應用于移動終端的文件快速傳輸的系統的結構示意圖;
[0022]圖7為本發明第六實施例的應用于移動終端的文件快速傳輸的系統的結構示意圖;
[0023]本發明目的的實現、功能特點及優點將結合實施例,參照附圖做進一步說明。
【具體實施方式】
[0024]應當理解,此處所描述的具體實施例僅僅用以解釋本發明,并不用于限定本發明。
[0025]現在將參考附圖描述實現本發明各個實施例的移動終端。在后續的描述中,使用用于表示元件的諸如“模塊”、“部件”或“單元”的后綴僅為了有利于本發明的說明,其本身并沒有特定的意義。因此,"模塊"與"部件"可以混合地使用。
[0026]移動終端可以以各種形式來實施。例如,本發明中描述的終端可以包括諸如移動電話、智能電話、筆記本電腦、數字廣播接收器、PDA(個人數字助理)、PAD(平板電腦)、PMP(便攜式多媒體播放器)、導航裝置等等的移動終端以及諸如數字TV、臺式計算機等等的固定終端。下面,假設終端是移動終端。然而,本領域技術人員將理解的是,除了特別用于移動目的的元件之外,根據本發明的實施方式的構造也能夠應用于固定類型的終端。
[0027]圖1為實現本發明各個實施例的移動終端的一個可選的硬件結構示意。
[0028]移動終端100可以包括無線通信單元110、A/V(音頻/視頻)輸入單元120、用戶輸入單元130、感測單元140、輸出單元150、存儲器160、接口單元171、控制器180和電源單元172等等。圖1示出了具有各種組件的移動終端,但是應理解的是,并不要求實施所有示出的組件。可以替代地實施更多或更少的組件。將在下面詳細描述移動終端的元件。
[0029]無線通信單元110通常包括一個或多個組件,其允許移動終端100與無線通信系統或網絡之間的無線電通信。例如,無線通信單元可以包括移動通信模塊112、無線互聯網模塊113、短程通信模塊114和位置信息模塊115中的至少一個。
[0030]移動通信模塊112將無線電信號發送到基站(例如,接入點、節點B等等)、外部終端以及服務器中的至少一個和/或從其接收無線電信號。這樣的無線電信號可以包括語音通話信號、視頻通話信號、或者根據文本和/或多媒體消息發送和/或接收的各種類型的數據。
[0031]無線互聯網模塊113支持移動終端的無線互聯網接入。該模塊可以內部或外部地耦接到終端。該模塊所涉及的無線互聯網接入技術可以包括WLAN(無線LAN)(W1-Fi)、Wibro(無線寬帶)、Wimax(全球微波互聯接入)、HSDPA(高速下行鏈路分組接入)等等。
[0032]短程通信模塊114是用于支持短程通信的模塊。短程通信技術的一些示例包括藍牙?、射頻識別(RFID)、紅外數據協會(IrDA)、超寬帶(UWB)、紫蜂?等等。
[0033]位置信息模塊115是用于檢查或獲取移動終端的位置信息的模塊。位置信息模塊的典型示例是GPS(全球定位系統)。根據當前的技術,GPS模塊115計算來自三個或更多衛星的距離信息和準確的時間信息并且對于計算的信息應用三角測量法,從而根據經度、瑋度和高度準確地計算三維當前位置信息。當前,用于計算位置和時間信息的方法使用三顆衛星并且通過使用另外的一顆衛星校正計算出的位置和時間信息的誤差。此外,GPS模塊115能夠通過實時地連續計算當前位置信息來計算速度信息。
[0034]A/V輸入單元120用于接收音頻或視頻信號。A/V輸入單元120可以包括相機121和麥克風1320,相機121對在視頻捕獲模式或圖像捕獲模式中由圖像捕獲裝置獲得的靜態圖片或視頻的圖像數據進行處理。處理后的圖像幀可以顯示在顯示單元151上。經相機121處理后的圖像幀可以存儲在存儲器160(或其它存儲介質)中或者經由無線通信單元110進行發送,可以根據移動終端的構造提供兩個或更多相機1210。麥克風122可以在電話通話模式、記錄模式、語音識別模式等等運行模式中經由麥克風接收聲音(音頻數據),并且能夠將這樣的聲音處理為音頻數據。處理后的音頻(語音)數據可以在電話通話模式的情況下轉換為可經由移動通信模塊112發送到移動通信基站的格式輸出。麥克風122可以實施各種類型的噪聲消除(或抑制)算法以消除(或抑制)在接收和發送音頻信號的過程中產生的噪聲或者干擾。
[0035]用戶輸入單元130可以根據用戶輸入的命令生成鍵輸入數據以控制移動終端的各種操作。用戶輸入單元130允許用戶輸入各種類型的信息,并且可以包括鍵盤、鍋仔片、觸摸板(例如,檢測由于被接觸而導致的電阻、壓力、電容等等的變化的觸敏組件)、滾輪、搖桿等等。特別地,當觸摸板以層的形式疊加在顯示單元151上時,可以形成觸摸屏。
[0036]感測單元140檢測移動終端100的當前狀態,(例如,移動終端100的打開或關閉狀態)、移動終端100的位置、用戶對于移動終端100的接觸(S卩,觸摸輸入)的有無、移動終端100的取向、移動終端100的加速或減速移動和方向等等,并且生成用于控制移動終端100的操作的命令或信號。例如,當移動終端100實施為滑動型移動電話時,感測單元140可以感測該滑動型電話是打開還是關閉。另外,感測單元140能夠檢測電源單元172是否提供電力或者接口單元171是否與外部裝置耦接。感測單元140可以包括接近傳感器1410將在下面結合觸摸屏來對此進行描述。
[0037]接口單元171用作至少一個外部裝置與移動終端100連接可以通過的接口。例如,外部裝置可以包括有線或無線頭戴式耳機端口、外部電源(或電池充電器)端口、有線或無線數據端口、存儲卡端口、用于連接具有識別模塊的裝置的端口、音頻輸入/輸出(I/O)端口、視頻I/O端口、耳機端口等等。識別模塊可以是存儲用于驗證用戶使用移動終端100的各種信息并且可以包括用戶識別模塊(UIM)、客戶識別模塊(SIM)、通用客戶識別模塊(USM)等等。另外,具有識別模塊的裝置(下面稱為"識別裝置")可以采取智能卡的形式,因此,識別裝置可以經由端口或其它連接裝置與移動終端100連接。接口單元171可以用于接收來自外部裝置的輸入(例如,數據信息、電力等等)并且將接收到的輸入傳輸到移動終端100內的一個或多個元件或者可以用于在移動終端和外部裝置之間傳輸數據。
[0038]另外,當移動終端100與外部底座連接時,接口單元171可以用作允許通過其將電力從底座提供到移動終端100的路徑或者可以用作允許從底座輸入的各種命令信號通過其傳輸到移動終端的路徑。從底座輸入的各種命令信號或電力可以用作用于識別移動終端是否準確地安裝在底座上的信號。輸出單元150被構造為以視覺、音頻和/或觸覺方式提供輸出信號(例如,音頻信號、視頻信號、警報信號、振動信號等等)。
[0039]輸出單元150可以包括顯示單元151、音頻輸出模塊152等等。
[0040]顯示單元151可以顯示在移動終端100中處理的信息。例如,當移動終端100處于電話通話模式時,顯示單元151可以顯示與通話或其它通信(例如,文本消息收發、多媒體文件下載等等)相關的用戶界面(UI)或圖形用戶界面(GUI)。當移動終端100處于視頻通話模式或者圖像捕獲模式時,顯示單元151可以顯示捕獲的圖像和/或接收的圖像、示出視頻或圖像以及相關功能的UI或GUI等等。
[0041]同時,當顯示單元151和觸摸板以層的形式彼此疊加以形成觸摸屏時,顯示單元151可以用作輸入裝置和輸出裝置。顯示單元151可以包括液晶顯示器(LCD)、薄膜晶體管IXD(TFT-1XD)、有機發光二極管(OLED)顯示器、柔性顯示器、三維(3D)顯示器等等中的至少一種。這些顯示器中的一些可以被構造為透明狀以允許用戶從外部觀看,這可以稱為透明顯示器,典型的透明顯示器可以例如為TOLED(透明有機發光二極管)顯示器等等。根據特定想要的實施方式,移動終端100可以包括兩個或更多顯示單元(或其它顯示裝置),例如,移動終端可以包括外部顯示單元(未示出)和內部顯示單元(未示出)。觸摸屏可用于檢測觸摸輸入壓力以及觸摸輸入位置和觸摸輸入面積。
[0042]音頻輸出模塊152可以在移動終端處于呼叫信號接收模式、通話模式、記錄模式、語音識別模式、廣播接收模式等等模式下時,將無線通信單元110接收的或者在存儲器160中存儲的音頻數據轉換音頻信號并且輸出為聲音。而且,音頻輸出模塊152可以提供與移動終端100執行的特定功能相關的音頻輸出(例如,呼叫信號接收聲音、消息接收聲音等等)。音頻輸出模塊152可以包括揚聲器、蜂鳴器等等。
[0043]存儲器160可以存儲由控制器180執行的處理和控制操作的軟件程序等等,或者可以暫時地存儲己經輸出或將要輸出的數據(例如,電話簿、消息、靜態圖像、視頻等等)。而且,存儲器160可以存儲關于當觸摸施加到觸摸屏時輸出的各種方式的振動和音頻信號的數據。
[0044]存儲器160可以包括至少一種類型的存儲介質,所述存儲介質包括閃存、硬盤、多媒體卡、卡型存儲器(例如,SD或DX存儲器等等)、隨機訪問存儲器(RAM)、靜態隨機訪問存儲器(SRAM)、只讀存儲器(R0M)、電可擦除可編程只讀存儲器(EEPROM)、可編程只讀存儲器(PROM)、磁性存儲器、磁盤、光盤等等。而且,移動終端100可以與通過網絡連接執行存儲器160的存儲功能的網絡存儲裝置協作。
[0045]控制器180通常控制移動終端的總體操作。例如,控制器180執行與語音通話、數據通信、視頻通話等等相關的控制和處理。另外,控制器180可以包括用于再現(或回放)多媒體數據的多媒體模塊1810,多媒體模塊1810可以構造在控制器180內,或者可以構造為與控制器180分離。控制器180可以執行模式識別處理,以將在觸摸屏上執行的手寫輸入或者圖片繪制輸入識別為字符或圖像。
[0046]電源單元172在控制器180的控制下接收外部電力或內部電力并且提供操作各元件和組件所需的適當的電力。
[0047]這里描述的各種實施方式可以以使用例如計算機軟件、硬件或其任何組合的計算機可讀介質來實施。對于硬件實施,這里描述的實施方式可以通過使用特定用途集成電路(ASIC)、數字信號處理器(DSP)、數字信號處理裝置(DSPD)、可編程邏輯裝置(PLD)、現場可編程門陣列(FPGA)、處理器、控制器、微控制器、微處理器、被設計為執行這里描述的功能的電子單元中的至少一種來實施,在一些情況下,這樣的實施方式可以在控制器180中實施。對于軟件實施,諸如過程或功能的實施方式可以與允許執行至少一種功能或操作的單獨的軟件模塊來實施。軟件代碼可以由以任何適當的編程語言編寫的軟件應用程序(或程序)來實施,軟件代碼可以存儲在存儲器160中并且由控制器180執行。
[0048]至此,己經按照其功能描述了移動終端。下面,為了簡要起見,將描述諸如折疊型、直板型、擺動型、滑動型移動終端等等的各種類型的移動終端中的滑動型移動終端作為示例。因此,本發明能夠應用于任何類型的移動終端,并且不限于滑動型移動終端。
[0049]基于上述移動終端硬件結構,提出本發明方法各個實施例。
[0050]如圖2所示,本發明第一實施例提出一種應用于移動終端的文件快速傳輸的方法,文件主要是指圖片或視頻,該方法包括步驟:
[0051 ] S1、將要傳輸的文件按預設規則分割成至少兩個文件塊。
[0052]S2、對上述至少兩個文件塊進行編號。
[0053]S3、向業務服務器發起網絡請求。
[0054]S4、通過靜態服務器對編號后的至少兩個文件塊進行并行發送。
[0055]在步驟SI中,預設規則包括設定文件塊的大小或指定文件塊的個數,也可以根據文件的大小設置不同數量的文件塊個數。例如,當要傳輸的文件不滿IM時,將其分割成2個文件塊;當要傳輸的文件為IM至3M時,將其分割成4個文件塊。
[0056]在步驟S2中,可以將步驟SI中分割得到的至少兩個文件塊進行編號,一般地,編號可以采用A、B、C、D等英文字母,也可以是1、2、3、4等數字符號。
[0057]步驟S4中,在發送過程中,該些文件塊的發送進程并不會相互影響,即任何一個文件塊的發送失敗都不會影響其余的文件塊的發送過程。例如,當一個文件被分割成4個文件塊,編號為A、B、C、D時,若文件塊A發送失敗,則文件塊B、C、D還是會繼續發送,可能會發送成功,也可以能發送失敗。此外,文件塊A、B、C、D是同時發送的,其編號并不會對其發送的快慢造成影響。
[0058]在本實施例中,還包括步驟S5:獲取上述至少兩個文件塊的發送結果,當有文件塊未發送成功時,可以對發送失敗的文件塊進行重新發送;而當所有文件塊都發送成功時,則可以通知用戶。在具體操作時,每發送成功一個文件塊,就可以去獲取其他文件塊的發送結果,以此檢測當前發送成功的文件塊是不是最后一個文件塊,若是最后一個文件塊,且其它文件塊的發送結果均顯示成功,則表示所有的文件塊都已發送成功,可以通過短信或彈窗等方式通知用戶了。
[0059]若當前文件塊發送失敗,則可以對該發送失敗的文件塊自動重新發送,重新發送的次數不超過預設的次數,一般地,預設的次數為3次。當對發送失敗的文件塊重發兩次或三次還是發送失敗時,說明此時的網絡環境不穩定,可以先放棄發送,稍后提醒用戶重新進行發送,同樣,在發送時只需對發送失敗的文件塊進行發送。
[0060]請同時參照圖2、圖3,本發明第二實施例提出一種應用于移動終端的文件快速傳輸的方法,文件主要是指圖片或視頻,該方法包括步驟:
[0061 ] S1、將要傳輸的文件按預設規則分割成至少兩個文件塊。
[0062]S2、對上述至少兩個文件塊進行編號。
[0063]S3、向業務服務器發起網絡請求。
[0064]S4、通過靜態服務器對編號后的至少兩個文件塊進行并行發送。
[0065]在步驟SI中,預設規則包括設定文件塊的大小或指定文件塊的個數,也可以根據文件的大小設置不同數量的文件塊個數。例如,當要傳輸的文件不滿IM時,將其分割成2個文件塊;當要傳輸的文件為IM至3M時,將其分割成4個文件塊。
[0066]在步驟S2中,可以將步驟SI中分割得到的至少兩個文件塊進行編號,一般地,編號可以采用A、B、C、D等英文字母,也可以是1、2、3、4等數字符號。
[0067]步驟S4中,在發送過程中,該些文件塊的發送進程并不會相互影響,即任何一個文件塊的發送失敗都不會影響其余的文件塊的發送過程。例如,當一個文件被分割成4個文件塊,編號為A、B、C、D時,若文件塊A發送失敗,則文件塊B、C、D還是會繼續發送,可能會發送成功,也可以能發送失敗。此外,文件塊A、B、C、D是同時發送的,其編號并不會對其發送的快慢造成影響。
[0068]與上第一實施例不同的是,本發明第二實施例為進一步提升文件傳輸的速度,在步驟S4中,即在通過靜態資源服務器對編號后的所述至少兩個文件塊進行并行發送時,還可以采用狀態機對文件傳輸的各個階段進行分離,并對分離后的各個階段進行管理。如圖3所示,文件在傳輸過程中的階段可以包括:初始化階段10、預處理階段20、許可獲取階段30、文本信息傳送階段40、與業務服務器確認階段50、完成階段60。
[0069]具體地,先進入初始化階段10,初始化后進入預處理階段20,在預處理階段20中包括預處理進行階段21以及預處理結束階段22,在預處理進行階段中21退出就會返回初始化階段10,若在預處理進行階段21中預處理失敗了,則直接進入完成(結束)階段60;在預處理進行階段21中預處理成功就會進入到預處理結束階段22,退出初始化階段10也可以直接進入到預處理結束階段22。之后會進入到許可獲取階段30,許可獲取階段30包含獲取許可進行階段32以及獲取許可成功階段31;在獲取許可進行階段中32成功就進入獲取許可成功階段31,而失敗或退出則會返回到預處理結束階段22。
[0070]完成獲取許可成功階段31后,就可以進入到文本信息傳送階段40,文本信息傳送階段40包括文本信息傳送進行階段41以及文本信息傳送成功階段42;具體地,用戶可以編輯相關文本信息并點擊發送,此時就進入到文本信息傳送進行階段41,若在文本信息傳送進行階段41失敗或退出,直接進入到完成階段60;在此階段,若文件即圖片或視頻發送失敗也會進入完成階段60;若文本信息發送成功則進入到文本信息傳送成功階段42。在文本信息傳送成功階段42可以進一步檢測文件即圖片或視頻發送的結果,若文件發送成功,則可以進一步確認,進入與業務服務器確認階段50,在該階段確認成功或失敗都進入到完成階段60 ;若文件發送失敗,則直接進入完成階段60 ;此外,在文本信息傳送成功階段40中若退出,也會直接進入到完成階段60。
[0071]請同時參照圖2、圖4,本發明第三實施例提出一種應用于移動終端的文件快速傳輸的方法,該方法包括步驟:
[0072]S1、將要傳輸的文件按預設規則分割成至少兩個文件塊。
[0073]S2、對上述至少兩個文件塊進行編號。
[0074]S3、向業務服務器發起網絡請求。
[0075]S4、通過靜態服務器對編號后的至少兩個文件塊進行并行發送。
[0076]在步驟SI中,預設規則包括設定文件塊的大小或指定文件塊的個數,也可以根據文件的大小設置不同數量的文件塊個數。例如,當要傳輸的文件不滿IM時,將其分割成2個文件塊;當要傳輸的文件為IM至3M時,將其分割成4個文件塊。
[0077]在步驟S2中,可以將步驟SI中分割得到的至少兩個文件塊進行編號,一般地,編號可以采用A、B、C、D等英文字母,也可以是1、2、3、4等數字符號。
[0078]步驟S4中,在發送過程中,該些文件塊的發送進程并不會相互影響,即任何一個文件塊的發送失敗都不會影響其余的文件塊的發送過程。例如,當一個文件被分割成4個文件塊,編號為A、B、C、D時,若文件塊A發送失敗,則文件塊B、C、D還是會繼續發送,可能會發送成功,也可以能發送失敗。此外,文件塊A、B、C、D是同時發送的,其編號并不會對其發送的快慢造成影響。
[0079]下面結合圖4,進一步闡述對本實施例中的步驟S4進行說明,假設在本實施例中文件被分割成3個文件塊,編號為A、B、C。先進入步驟Al,即開始發送文件塊A、B、C;用戶在文件發送過程中也可以如步驟A2中所示點擊重發或發出重新發送的指令,若用戶點擊重發則進入步驟A3獲取靜態資源服務器中接受到的文件大小,然后如步驟A4所示計算剩余需要發送的文件塊,若用戶沒有點擊重發,則直接進入步驟A4即計算剩余需要發送的文件塊。然后,如步驟A5所述,將需要發送的文件塊作為當前文件塊進行發送,此時需要發送的文件塊為文件塊A、B、C,發送過程中可以設置一定的時間間隔進行步驟A6,檢測當前文件塊是否發送成功,當然也可以在發送告一段落后,例如其中一個文件塊發送成功或失敗了,此時再進行步驟A6;在步驟A6中若沒有發送成功,即文件塊A、B、C均沒有發送成功,則返回步驟A5接續進行當前文件塊的發送,若有至少一個文件塊發送成功了,則進入步驟A7,檢測當前文件塊是否是最后一個文件塊,若不是,返回步驟A5接續進行當前文件塊的發送,若是,則進入步驟AS結束文件發送進程,此時可以通知用戶文件已發送成功。例如在步驟A6中,文件塊A、B、C均沒有發送成功,則從步驟A6直接返回到步驟A5,接續進行文件塊A、B、C的發送。若在步驟A6中文件塊B發送成功了,但文件塊A和C還沒有發送成功;則會進入到步驟A7,從步驟A7返回到步驟A5,接續進行文件塊A和C的發送。同樣,在步驟A6中文件塊A、B發送成功了,但文件塊C還沒有發送成功;則會進入到步驟A7,從步驟A7返回到步驟A5,接續進行文件塊C的發送。若此時在步驟A6中文件塊C也發送成功,即文件A、B、C均發送成功了,其中文件塊C是作為最后一個文件塊發送成功的,則進入步驟AS結束文件發送進程,此時可以通知用戶文件已發送成功。
[0080]如圖5所示,本發明進一步提供一種應用于移動終端的文件快速傳輸的系統201,尤其適用于將文件的快速傳輸至計算機,在本發明的第四實施例中,該系統201包括網絡請求模塊210、文件分割模塊220、文件編號模塊230、文件傳輸模塊240。其中,網絡請求模塊210用于與業務服務器310進行業務的交互,例如發起網絡請求等。文件分割模塊220用于將文件按預設規則分割成至少兩個文件塊;預設規則包括設定文件塊的大小或指定文件塊的個數,也可以根據文件的大小設置不同數量的文件塊個數。例如,當要傳輸的文件不滿IM時,將其分割成2個文件塊;當要傳輸的文件為IM至3M時,將其分割成4個文件塊。文件編號模塊230用于對上述至少兩個文件塊進行編號;一般地,編號可以采用A、B、C、D等英文字母,也可以是1、2、3、4等數字符號。文件傳輸模塊240用于通過靜態資源服務器320對編號后的至少兩個文件塊進行并行發送。可見,文件傳輸模塊240在進行文件發送時是通過靜態資源服務器320進行文件的傳輸,同時通過業務服務器310做普通的業務交互接口的。
[0081]如圖6所示,根據本發明的第五實施例,還提供一種應用于移動終端的文件快速傳輸的系統202,該系統202包括網絡請求模塊210、文件分割模塊220、文件編號模塊230、文件傳輸模塊240。其中,網絡請求模塊210用于與業務服務器310進行業務的交互,例如發起網絡請求等。文件分割模塊220用于將文件按預設規則分割成至少兩個文件塊;預設規則包括設定文件塊的大小或指定文件塊的個數,也可以根據文件的大小設置不同數量的文件塊個數。例如,當要傳輸的文件不滿IM時,將其分割成2個文件塊;當要傳輸的文件為IM至3M時,將其分割成4個文件塊。文件編號模塊230用于對上述至少兩個文件塊進行編號;一般地,編號可以采用A、B、C、D等英文字母,也可以是1、2、3、4等數字符號。文件傳輸模塊240用于通過靜態服務器320對編號后的至少兩個文件塊進行并行發送。可見,文件傳輸模塊240在進行文件發送時是通過靜態資源服務器320進行文件的傳輸,同時通過業務服務器310做普通的業務交互接口的。
[0082]還包括塊文件重發模塊250、文件發送通知模塊260。其中:文件重發模塊250用于根據上述至少兩個文件塊的發送結果,對發送失敗的文件塊進行重新發送;文件發送通知模塊260用于獲取所有文件塊的發送結果,并在所有文件都發送成功時通知用戶。上述文件或文件主要是指照片或視頻等圖像資源。
[0083]具體地,還包括數據庫280,用于存儲文件并記錄文件塊的發送進程;在發送文件之前,文件分割模塊220與文件編號模塊230先對數據庫280中欲傳輸的文件進行分塊和編號,獲得至少兩個具有編號的文件塊;例如文件被分割成3個文件塊,編號為A、B、C。在發送的時候,移動終端開啟線程對所有的文件塊即文件塊A、B、C進行并行發送,在發送過程中,任何一個文件塊的失敗都不會影響其余的文件塊。也就是說,若文件塊A發送失敗,則文件塊B、C還是會繼續發送,可能會發送成功,也可以能發送失敗。此外,文件塊A、B、C是同時發送的,其編號并不會對其發送的快慢造成影響。
[0084]發送成功的文件塊可以尋找其余文件塊的發送結果;若其余文件塊都已發送成功,則業務服務器會向移動終端發送通知。如果某個文件塊發送失敗了,移動終端可以對個發送失敗的文件塊進行自動重發。在具體實施時,可以在文件發送過程中設置一定的時間間隔進行檢測當前文件塊是否發送成功,當然也可以在發送告一段落后,例如其中一個文件塊發送成功或失敗了,此時再進行進行檢測;若沒有發送成功,即文件塊A、B、C均沒有發送成功,則接續進行文件塊的發送,若有至少一個文件塊發送成功了,則檢測當前文件塊是否是最后一個文件塊,若不是,返回接續進行當前文件塊的發送,若是,則結束文件發送進程,此時可以通知用戶文件已發送成功。例如,若文件塊A、B、C均沒有發送成功,則接續進行文件塊A、B、C的發送。若文件塊B發送成功了,但文件塊A和C還沒有發送成功;此時也會檢測當前文件塊是否是最后一個文件塊,當然返回的結果是否定的,此時接續進行文件塊A和C的發送。同樣,若文件塊A、B發送成功了,但文件塊C還沒有發送成功;則也會檢測當前文件塊是否是最后一個文件塊,當然返回的結果是否定的,此時接續進行文件塊C的發送。若此時文件塊C也發送成功,即文件A、B、C均發送成功了,其中文件塊C是作為最后一個文件塊發送成功的,則結束文件發送進程,此時可以通知用戶文件已發送成功。
[0085]—般對發送失敗的文件塊重發的次數不超過預設的次數,一般預設的次數為兩次或三次,若重發兩次或三次后還是失敗,就可以等到下次由用戶發出指令對這個發送失敗的文件塊進行重發,靜態資源服務器320在收到所有文件塊后再對文件進行排序組合生成最終傳輸的文件。
[0086]如圖7所示,根據本發明的第五實施例,還提供一種應用于移動終端的文件快速傳輸的系統203,該系統203包括網絡請求模塊210、文件分割模塊220、文件編號模塊230、文件傳輸模塊240。其中,網絡請求模塊210用于與業務服務器310進行業務的交互,例如發起網絡請求等。文件分割模塊220用于將文件按預設規則分割成至少兩個文件塊;預設規則包括設定文件塊的大小或指定文件塊的個數,也可以根據文件的大小設置不同數量的文件塊個數。例如,當要傳輸的文件不滿IM時,將其分割成2個文件塊;當要傳輸的文件為IM至3M時,將其分割成4個文件塊。文件編號模塊230用于對上述至少兩個文件塊進行編號;一般地,編號可以采用A、B、C、D等英文字母,也可以是1、2、3、4等數字符號。文件傳輸模塊240用于通過靜態服務器320對編號后的至少兩個文件塊進行并行發送。可見,文件傳輸模塊240在進行文件發送時是通過靜態資源服務器320進行文件的傳輸,同時通過業務服務器310做普通的業務交互接口的。
[0087]還包括塊文件重發模塊250、文件發送通知模塊260。其中:文件重發模塊250用于根據上述至少兩個文件塊的發送結果,對發送失敗的文件塊進行重新發送;文件發送通知模塊260用于獲取所有文件塊的發送結果,并在所有文件都發送成功時通知用戶。上述文件或文件主要是指照片或視頻等圖像資源。
[0088]具體地,還包括數據庫280,用于存儲文件并記錄文件塊的發送進程;在發送文件之前,文件分割模塊220與文件編號模塊230先對數據庫280中欲傳輸的文件進行分塊和編號,獲得至少兩個具有編號的文件塊;例如文件被分割成3個文件塊,編號為A、B、C。在發送的時候,移動終端開啟線程對所有的文件塊即文件塊A、B、C進行并行發送,在發送過程中,任何一個文件塊的失敗都不會影響其余的文件塊。也就是說,若文件塊A發送失敗,則文件塊B、C還是會繼續發送,可能會發送成功,也可以能發送失敗。此外,文件塊A、B、C是同時發送的,其編號并不會對其發送的快慢造成影響。
[0089]發送成功的文件塊可以尋找其余文件塊的發送結果;若其余文件塊都已發送成功,則業務服務器會向移動終端發送通知。如果某個文件塊發送失敗了,移動終端可以對個發送失敗的文件塊進行自動重發。在具體實施時,可以在文件發送過程中設置一定的時間間隔進行檢測當前文件塊是否發送成功,當然也可以在發送告一段落后,例如其中一個文件塊發送成功或失敗了,此時再進行進行檢測;若沒有發送成功,即文件塊A、B、C均沒有發送成功,則接續進行文件塊的發送,若有至少一個文件塊發送成功了,則檢測當前文件塊是否是最后一個文件塊,若不是,返回接續進行當前文件塊的發送,若是,則結束文件發送進程,此時可以通知用戶文件已發送成功。例如,若文件塊A、B、C均沒有發送成功,則接續進行文件塊A、B、C的發送。若文件塊B發送成功了,但文件塊A和C還沒有發送成功;此時也會檢測當前文件塊是否是最后一個文件塊,當然返回的結果是否定的,此時接續進行文件塊A和C的發送。同樣,若文件塊A、B發送成功了,但文件塊C還沒有發送成功;則也會檢測當前文件塊是否是最后一個文件塊,當然返回的結果是否定的,此時接續進行文件塊C的發送。若此時文件塊C也發送成功,即文件A、B、C均發送成功了,其中文件塊C是作為最后一個文件塊發送成功的,則結束文件發送進程,此時可以通知用戶文件已發送成功。
[0090]—般對發送失敗的文件塊重發的次數不超過預設的次數,一般預設的次數為兩次或三次,若重發兩次或三次后還是失敗,就可以等到下次由用戶發出指令對這個發送失敗的文件塊進行重發,靜態資源服務器320在收到所有文件塊后再對文件進行排序組合生成最終傳輸的文件。
[0091]此外,還可以包括文件傳輸階段管理模塊270,用于采用狀態機對文件傳輸的各個階段進行分離,并對分離后的各個階段進行管理。一般地,上述各個階段包括初始化階段
10、預處理階段20、許可獲取階段30、文本信息傳送階段40、與業務服務器確認階段50。請同時參照圖3,在實施時,先進入初始化階段10,初始化后進入預處理階段20,在預處理階段20中包括預處理進行階段21以及預處理結束階段22,在預處理進行階段中21退出就會返回初始化階段10,若在預處理進行階段21中預處理失敗了,則直接進入完成(結束)階段60;在預處理進行階段21中預處理成功就會進入到預處理結束階段22,退出初始化階段10也可以直接進入到預處理結束階段22。之后會進入到許可獲取階段30,許可獲取階段30包含獲取許可進行階段32以及獲取許可成功階段31;在獲取許可進行階段中32成功就進入獲取許可成功階段31,而失敗或退出則會返回到預處理結束階段22。
[0092]完成獲取許可成功階段31后,就可以進入到文本信息傳送階段40,文本信息傳送階段40包括文本信息傳送進行階段41以及文本信息傳送成功階段42;具體地,用戶可以編輯相關文本信息并點擊發送,此時就進入到文本信息傳送進行階段41,若在文本信息傳送進行階段41失敗或退出,直接進入到完成階段60;在此階段,若文件即圖片或視頻發送失敗也會進入完成階段60;若文本信息發送成功則進入到文本信息傳送成功階段42。在文本信息傳送成功階段42可以進一步檢測文件即圖片或視頻發送的結果,若文件發送成功,則可以進一步確認,進入與業務服務器確認階段50,在該階段確認成功或失敗都進入到完成階段60 ;若文件發送失敗,則直接進入完成階段60 ;此外,在文本信息傳送成功階段40中若退出,也會直接進入到完成階段60。
[0093]本發明提出的一種應用于移動終端的文件快速傳輸的方法及其系統,文件發送前,移動終端將文件分割成至少兩個文件塊,并進行編號;在文件傳輸時,通過靜態資源服務器進行文件的傳輸,并將業務服務器做普通的業務交互接口。靜態資源服務器在收到所有文件分塊后可以再對文件進行排序組合。采用這種方式將業務和文件傳輸進行分離,大大提高了文件傳輸的速度和成功率,能節省移動終端的流量。
[0094]需要說明的是,在本文中,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者裝置不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者裝置所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括該要素的過程、方法、物品或者裝置中還存在另外的相同要素。
[0095]上述本發明實施例序號僅僅為了描述,不代表實施例的優劣。
[0096]通過以上的實施方式的描述,本領域的技術人員可以清楚地了解到上述實施例方法可借助軟件加必需的通用硬件平臺的方式來實現,當然也可以通過硬件,但很多情況下前者是更佳的實施方式。基于這樣的理解,本發明的技術方案本質上或者說對現有技術做出貢獻的部分可以以軟件產品的形式體現出來,該計算機軟件產品存儲在一個存儲介質(如R0M/RAM、磁碟、光盤)中,包括至少兩個指令用以使得一臺終端設備(可以是手機,計算機,服務器,空調器,或者網絡設備等)執行本發明各個實施例所述的方法。
[0097]以上僅為本發明的優選實施例,并非因此限制本發明的專利范圍,凡是利用本發明說明書及附圖內容所作的等效結構或等效流程變換,或直接或間接運用在其他相關的技術領域,均同理包括在本發明的專利保護范圍內。
【主權項】
1.一種應用于移動終端的文件快速傳輸的方法,其特征在于,包括步驟: 將要傳輸的文件按預設規則分割成至少兩個文件塊; 對所述至少兩個文件塊進行編號; 向業務服務器發起網絡請求; 通過靜態資源服務器對編號后的所述至少兩個文件塊進行并行發送。2.根據權利要求1所述的應用于移動終端的文件快速傳輸的方法,其特征在于,該方法之后還包括步驟:根據所述至少兩個文件塊的發送結果,對發送失敗的文件塊進行重新發送。3.根據權利要求2所述的應用于移動終端的文件快速傳輸的方法,其特征在于,所述對發送失敗的文件塊重新發送的次數不超過預設的次數。4.根據權利要求1所述的應用于移動終端的文件快速傳輸的方法,其特征在于,該方法之后還包括步驟:獲取所述至少兩個文件塊的發送結果,并在所述至少兩個文件塊都發送成功時通知用戶。5.根據權利要求1所述的應用于移動終端的文件快速傳輸的方法,其特征在于,在通過靜態資源服務器對編號后的所述至少兩個文件塊進行并行發送時,還包括:采用狀態機對文件傳輸的各個階段進行分離,并對分離后的各個階段進行管理。6.根據權利要求5所述的應用于移動終端的文件快速傳輸的方法,其特征在于,所述各個階段包括:初始化階段、預處理階段、許可獲取階段、文本信息傳送階段、與業務服務器確認階段。7.一種應用于移動終端的文件快速傳輸的系統,其特征在于,包括: 文件分割模塊,用于將所述文件按預設規則分割成至少兩個文件塊; 文件編號模塊,對所述至少兩個文件塊進行編號; 網絡請求管理模塊,用于向業務服務器發起網絡請求; 文件傳輸模塊,用于通過靜態資源服務器對編號后的所述至少兩個文件塊進行并行發送。8.根據權利要求7所述的應用于移動終端的文件快速傳輸的系統,其特征在于,所述系統還包括塊文件重發模塊,用于根據所述至少兩個文件塊的發送結果,對發送失敗的文件塊進行重新發送。9.根據權利要求7所述的應用于移動終端的文件快速傳輸的系統,其特征在于,所述系統還包括文件發送通知模塊,用于獲取所述至少兩個文件塊的發送結果,并在所述至少兩個文件都發送成功時通知用戶。10.根據權利要求7所述的應用于移動終端的文件快速傳輸的系統,其特征在于,所述系統還包括文件管理模塊,用于采用狀態機對文件傳輸的各個階段進行分離,并對分離后的各個階段進行管理。
【文檔編號】H04L29/08GK105978951SQ201610271920
【公開日】2016年9月28日
【申請日】2016年4月27日
【發明人】周培園
【申請人】努比亞技術有限公司