freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

基于android的ftp文件傳輸畢業(yè)論文(編輯修改稿)

2024-07-25 00:42 本頁面
 

【文章內容簡介】 cted socket)。 return 2。 } TCP連接監(jiān)聽如果的TcpListener線程在接受時被阻塞,關閉socket將引發(fā)一個異常public void quit() { try { ()。 } catch (Exception e) { (, Exception closing TcpListener listenSocket)。 } }監(jiān)聽到客戶端連接請求public void run() { try { while(true) { Socket clientSocket = ()。 (, New connection, spawned thread)。 SessionThread newSession = new SessionThread(clientSocket, new NormalDataSocketFactory(), )。 ()。 (newSession)。 } } catch (Exception e) { (, Exception in TcpListener)。 } }: 程序運行效果圖 第6章 系統(tǒng)實現(xiàn) Server端模塊的設計Server端啟動的時候,會加入到一個組播地址中,然后初始化Socket,對規(guī)定的端口進行偵聽。當請求連接的報文到來時,performAuthentication會對用戶的合法性進行驗證,Server端向手機端發(fā)送一個驗證包,等待手機端的響應;當收到的響應報文數(shù)據(jù)與預期的數(shù)據(jù)相等時,驗證通過,否則拒絕連接。連接成功后,會解析到的報文。由handldReceiveData類處理收到的不同命令,并且發(fā)送SendPacket與客戶端進行交互。為了提高程序的響應速度,多處使用子線程,這樣異步處理各種不同事件,避免了事件之間的盲等。當前沒有處理任務時可將處理器時間讓給其他任務,占用大量處理器時間的任務可以定期將處理器時間讓給其他任務,并可隨時停止某個任務,設置各個任務的優(yōu)先級,以此優(yōu)化性能,提高了程序的運行效率,減少了服務器的響應時間,提高了CPU和網(wǎng)絡I/O的利用率。Public synchronized void handleReceiveDeta(AbstractPacket packet, TcpConneetion connection){ (Receivedmand:+())。 Command mand = ()。 if(mand == ) { retumPacket=null。 } else if(() == ){ if(mand==Command.CLOSE){ ... } } else if(mand == ){ (powerOn)。 } else if(mand==Command.STOP){ ... } } Android設備端模塊的設計當手機啟動控制模塊時,會新建一個線程。此線程內,首先會創(chuàng)建一個Socket,建立一個控制連接到代理服務器,隨時等待客戶端請求連接的命令到來。當客戶端訪問ftp請求時,向代理發(fā)送連接命令,代理通過控制連接向Android設備發(fā)送命令。當手機接收到消息后,啟動身份驗證機制,進一步對客戶端做出應答。Android端通過CommandControl類與Server進行消息的傳遞,它本身接受本地網(wǎng)絡、遠程網(wǎng)絡信息兩個參數(shù),每次TCP連接都會新建一個TcpClient類對象,TcpClient類對象封裝了TCP連接,設有監(jiān)聽器netDataRecieved方法,對報文進行響應處理。其中CommandControl類定義了一組請求操作,包括USER命令、LIST命令等。為了減少資源占用,CommandContwl采用單例的形式,只與一個Server進行通信。當嘗試與新的Server進行通信時,CommandControl會關閉之前的連接,網(wǎng)絡具有很大的吞吐量。多處使用子線程處理界面控件和耗時的操作。這樣用戶在與Server進行交互的同時,還可以進行本地的操作,系統(tǒng)被阻塞的時間很短。public int onPasv() { clearState()。 proxyConnector = ()。 if(proxyConnector == null) { (, Unexpected null proxyConnector in onPasv)。 clearState()。 return 0。 } ProxyDataSocketInfo info = ()。 if(info == null) { (, Null ProxyDataSocketInfo)。 clearState()。 return 0。 } socket = ()。 proxyListenPort = ()。 return proxyListenPort。 }public boolean onPort(InetAddress dest, int port) { clearState()。 proxyConnector = ()。 = dest。 = port。 (ProxyDataSocketFactory client port settings stored)。 return true。 }public Socket onTransfer() { if(proxyConnector == null) { (Unexpected null proxyConnector in onTransfer)。 return null。 } if(socket == null) { // We are in PORT mode (not PASV mode) if(proxyConnector == null) { (, Unexpected null proxyConnector in onTransfer)。 return null。 } // May return null, that39。s fine. ProxyConnector will log errors. socket = (clientAddress, clientPort)。 return socket。 } else { // We are in PASV mode (not PORT mode) if((socket)) { return socket。 } else { (proxyConnector pasvAccept failed)。 return null。 } } } 第7章 系統(tǒng)測試 Android手機系統(tǒng)測試之打斷事件Android手機提供的打斷事件與以往手機有著一些機制上的不同,當然也有很多跟以前一樣的機制。所以我們要從他的應用程序打斷機理出發(fā),定制本系統(tǒng)的系統(tǒng)測試用例的打斷事件。打斷事件一般分為系統(tǒng)基本打斷事件;Back鍵;改變手機方向;長按Home鍵,切換應用程序;內容沖突檢測(content provider);長按Power鍵,調出關機窗口;Home鍵回home app,當前測試的應用就會放到后臺處于stop狀態(tài)。如果想監(jiān)控到Activity生命周期的變化,必然會在Create或Start等處有代碼來進行處理。在startActivityForResu函數(shù)中,()一句讓我們看到至少有一個mInstrumentation的對象受委托在啟動Activity,這個委托是有可能加入監(jiān)控動作的。public void startActivityForResult(Intent intent, int requestCode) { ........}在以perform開頭的幾個函數(shù)中,本系統(tǒng)再次發(fā)現(xiàn)了對mInstrumentation對象的調用。例如performStart()函數(shù)。final void performStart(){ ...........}該類的接口主要有以下幾類:對Activity監(jiān)控對象的處理接口,Activity狀態(tài)改變時的回調通知接口,生成Activity和Application的接口,向Activity發(fā)送事件通知的接口,性能處理的接口等。 測試中發(fā)現(xiàn)的問題及修復在測試時發(fā)現(xiàn)調用無線數(shù)據(jù)傳輸方法后程序崩潰,:usespermission android:name=/usespermissionusespermission android:name=/usespermissionusespermission android:name= /usespermission android:name=/usespermission 測試結果 開啟服務: 開啟服務logcat圖 客戶端訪問ftp地址: 客戶端訪問ftp地址logcat圖 登陸驗證輸入用戶名密碼登陸后,: 登陸驗證logcat圖結論由于Android設備不能夠接受入站連接,但它可以自由創(chuàng)建出站連接。因此Android設備上建立永久保持一個TCP連接到代理服務器。我們稱之為“命令連接”。在本課題中,利用代理服務系統(tǒng)作為Pc和Android手機的中介信使,解決了Android手機的入站連接限制。當FTP客戶端希望通過代理連接,它啟動一個正常的FTP連接到代理服務器。代理通知本應用程序有一個即將到來的FTP會話等待被建立。 本應用程序建立另一個TCP連接到代理(除了現(xiàn)有的控制連接),這個連接將被用于專門從FTP客戶端發(fā)送和接收數(shù)據(jù)。從而實現(xiàn)了任意客戶端可以登錄FTP服務器上傳下載文件,實現(xiàn)無需數(shù)據(jù)線即可管理手機的功能。該應用程序功能實用,輕便小巧,是一款優(yōu)秀的Android工具類應用。界面簡潔友好,操作簡單,附帶使用說明。除此之外還存在一些不足之處,例如服務端的驗證機制的安全性不是很高,只適合于個人使用,使用完畢后盡快關閉服務以防個人隱私資料的丟失。通過本次畢業(yè)設計我學到了不少新的專業(yè)知識。學會了如何查找文獻,如何利用網(wǎng)絡資源解決實際問題。在查閱一些Android專業(yè)論壇以及博客的過程中,發(fā)現(xiàn)開發(fā)應用軟件時要善于借鑒前人的經(jīng)驗參考既有代碼,避免“重復制造輪子”。參考文獻[1] 姚昱旻,劉衛(wèi)國. Android的架構與應用開發(fā)研究[J]. 計算機系統(tǒng)用,2008,11.[2] 周毅敏,[J].計算機技術展,2010,20(2):83.[3] [D].西安:西安電子科技大學大學, 2009.[4] [EB/OL].,20120906.[5] 張鵬. Eclipse插件開發(fā)學習筆記[Z]. 北京:電子工業(yè)出版社,2008.[6] [D].湖南:湖南師范大 學,2009.[7] [D].廣東:暨南大學,2010.[8] Satya Komatineni,Dave Android 3[M].American:Daniel W. Lewis Komatineni,2011.[9] W Enck, M Ongtang, P android security[J].Security amp。 Privacy,2009,32(1):5057.[10] M Ongtang,S McLaughlin,W Enck. Android permissions demystified[J. Proceedings of the 18th ACM conference on Computer and munications security,2011,34(1):627638.[11] [EB/OL].[12] Android平臺的應用程序開發(fā)與研究[J].電腦知識與 技術,2009, 5(28):5057.[13] 趙亮,[J].電腦知識與技術,2009, 5(29).[14] 耿東久,索岳,陳渝,文軍, 系統(tǒng) [J].計算機應用,2011,32(2):5057.[15] 雷麗暉,[J].計 算機學報,2005,28(4):635643. 附錄附錄A 文件傳輸協(xié)議簡介文件傳輸協(xié)議(英文:File Transfer Protocol,縮寫:FTP)是用于在網(wǎng)絡上進行文件傳輸?shù)囊惶讟藴蕝f(xié)議。它屬于網(wǎng)絡傳輸協(xié)議的應用層。FTP是一個8位的客戶端服務器協(xié)議,能操作任何類型的文件而不需要進一步處理,就像MIME或Unicode一樣。但是,F(xiàn)TP有著極高的延時,這意味著,從開始請求到第一次接收需求數(shù)據(jù)之間的時間,會非常長;并且不時的必須執(zhí)行一些冗長的登陸進程。FTP服務一般運行在20和21兩個端口。端口21用于在客戶端和服務器之間傳輸數(shù)據(jù)流,而端口20用于傳輸控制流,并且是命令通向ftp服務器的進口。當數(shù)據(jù)通過數(shù)據(jù)流傳輸時,控制流處于空閑狀態(tài)。而當控制流空閑很長時間后,客戶端的防火墻會將其會話置為超時,這樣當大量數(shù)據(jù)通過防火墻時,會
點擊復制文檔內容
環(huán)評公示相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1