MTP(Media Transfer Protocol(媒體傳輸協議))簡介


---恢復內容開始---

1,簡單說明

MTP,微軟公司規定的新的傳輸規則(字面本來應該是協議的,但是自己感覺更像是規則,制定了基本上的所有路線,剩下的是你想怎么選擇罷了,使用者完全沒有可能在它的框架里面再生成其他的東西)。MTP不但應用在USB(以USB端口傳輸數據的設備)方面,還應用在IP方面。不過主要還是在USB設備方面。現在很多手機都支持。

2,基本的工作原理

關於MTP的文檔,我會在參考文件處列出。僅供大家參考。

MTP協議本身,規定了USB設備的所有信息,文件讀取方式,傳輸方式,讀取方式甚至API的命名方式。

簡單的說,所有東西都用特定的數值規定。想要明白數值的意義,就需要查看MTP協議的內容。

剩下的就是通過API進行調用。

稍微用過Linux的,就基本上明白電腦是怎么讀取文件的。

基本上我們要讀取文件,都需要以下幾個要素。

>1,設備的信息

>2,設備的存儲的文件

>3,文件的路徑

>4,文件的屬性(大小,只讀等等)

>5,查看自身的內存大小,進去讀取

就像上述的一樣,我們是主動發起者,我們想干嘛,都是我們開始發起的,USB就是等個我們的命令。

我們發一個命令,它回復我們想要的東西。這樣就能減少移動設備的功能性。

(畢竟移動設備優勢在於小,太多的功能性,在物理上很難有變小的可能。

當然現在為了分擔主設備的運行,也有一些在設備本身添加功能。)

MTP協議也是基於上面的想法,使得主機(一般是指電腦)成為發起者,USB端是回應者。

以下【(API)】的地方,是指由相應的API存在

>連接設備,會進行初始化(API),登入設備(API),讀取設備的信息(API)

>然后在程序意義上開始連接設備(API),生成一個任務,以后所有的數據交流都是在這個任務有效的情況下產生的

>接下來,開始查看設備的存儲的文件(API)

>查看路徑(API)

>文件的屬性(API)

>讀取(API)

幾乎所有的操作都是通過API完成的,而且在讀取的時候都是通過文件包的方式進行讀取的。

之所以不寫出具體API名稱,是因為這些必須自己去詳讀,這里只是簡單介紹它。不過大家懂點英文,估計不看具體介紹也能看懂,使用。

基本上會跟以下的名詞打交道。

1,handle。這里直接可以解釋成“指向”。不管是devicehandle,還是objecthandle,都是指向設備,或者指向文件的意思

2,object。文件,文件夾

3,get。API中,獲取的意思。getXXXinfo,就是獲取信息,getXXX就是讀取了。

4,format。這個就需要看文檔了,對應相應的意思。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM