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

正文內(nèi)容

通信工程專業(yè)本科-閱讀頁(yè)

2025-01-06 17:23本頁(yè)面
  

【正文】 ion, 江蘇大學(xué)本科畢業(yè)論文 13 InterruptedException。參數(shù) type表示創(chuàng)建消息的類型,可以取 BINARY_MESSAGE、 MULTIPART_MESSAGE和 TEXT_MESSAGE 三個(gè)有效值,這三個(gè)有效值是 MessageConnection 接口中定義的常量。如果當(dāng)前有消息到來(lái),監(jiān)聽(tīng)器 mListener 將調(diào)回MessageListener 接口中的 notifyIningMessage 方法。 Public void notifyIningMessage(MessageConnection conn) 當(dāng)有消息到來(lái)時(shí), notifyIningMessage 方法將被調(diào)用,參數(shù) conn 表示消息連接。根據(jù)消息的內(nèi)容,無(wú)線消息被分為文本消息、二進(jìn)制消息和多媒體消息三種消息類型。 Message 接口是所有消息類型的父接口,定義了無(wú)線消息的基本方法。如果當(dāng)前消息是被發(fā)送的消息,那么這個(gè)地址表示目的地址;如果當(dāng)前消息是接收的消息,那么這個(gè)地址表示消息發(fā)送者的地址。 Public void setAddress(String address)— — 設(shè)置與當(dāng)前消息相關(guān)的地址。 ( 4) TextMessage 接口 TextMessage 接口描述了文本內(nèi)容的消息類型,提供了操作文本消息內(nèi)容的方法。 [13] Public void setPayloadText(String data)— — 設(shè)置當(dāng)前文本消息的內(nèi)容。服務(wù)器方式用于接收無(wú)線消息,其 URL 地址的格式為: 客戶端方式用于發(fā)送無(wú)線消息,其 URL 地址的格式為: 江蘇大學(xué)本科畢業(yè)論文 14 其中 scheme 表示消息的傳輸協(xié)議,無(wú)線消息 API支持 SMS、 MMS、 CBS 三種傳輸協(xié)議。 host 表示移動(dòng)設(shè)備的地址,對(duì)手機(jī)來(lái)說(shuō)就是電話號(hào)碼。下面代碼使用 Connector 類的工作方法創(chuàng)建一個(gè)短消息連接客戶端: MessageConnection mConnc= (MessageConnection)(“ )。 下面代碼創(chuàng)建了一個(gè)短消息連接的服務(wù)器端: MessageConnection mConns= (MessageConnection)(“ )。 文本信息 發(fā)送 文本信息 的過(guò)程如下: ( 1)創(chuàng)建 文本信息 客戶端連接。 ( 3)設(shè)置消息對(duì)象的內(nèi)容。 下面代碼演示了發(fā)送文本消息的過(guò)程。 MessageConnection mConn=(MessageConnection) (address)。 //設(shè)置文本消息內(nèi)容 (“ Hello” )。 江蘇大學(xué)本科畢業(yè)論文 15 ()。 } 文本信息 接收文本 信 息的過(guò)程如下: ( 1)創(chuàng)建 文本信息 服務(wù)器端連接。 ( 3) 當(dāng)有消息到達(dá)時(shí),監(jiān)聽(tīng)器將調(diào)回 MessageListener 接口中的notifyIningMessage 方法,在該方法中,連接對(duì)象調(diào)用 receive 方法接收消息。 public Receiver() { //創(chuàng)建連 接 String address=” 。 //把當(dāng)前對(duì)象設(shè)置為無(wú)線連接 mConns 的消息監(jiān)聽(tīng)器,當(dāng)有消息到達(dá)時(shí),當(dāng)前對(duì)象將調(diào)用 notifyIningMessage(MessageConnection)方法接收消息 (this)。 If(msg instanceof TextMessage) { //接收的消息為文本消息 TextMessage tMsg=(TextMessage)msg。 (msgContent)。在系統(tǒng)中有一個(gè)已安裝 MIDlet 的入站連接列表,列表中記錄了注冊(cè)的連接及處理江蘇大學(xué)本科畢業(yè)論文 16 此連接的 MIDlet。然而,如果 MIDlet 沒(méi)有運(yùn)行,則由 Java應(yīng)用管理監(jiān)聽(tīng)器監(jiān)聽(tīng)已注冊(cè)的連接,當(dāng)有連接到來(lái)時(shí), Java 應(yīng)用管理器啟動(dòng)相應(yīng)的 MIDlet,然后把連接交給 MIDlet 處理。 ( 1)靜態(tài)注冊(cè) 靜態(tài)注冊(cè)只要在 JAD 文件中添加 MIDletPush 屬性即可。對(duì)于 SMS 協(xié)議,該字段是發(fā)送者的電話號(hào)碼;對(duì)于 Socket 連接,該字段是一個(gè) IP地址。 “ *”匹配任何字符串,“?”匹配任何字符。如: (“ ,” SMSMIDlet” ,” 555*” )。 [13] 文本信息 收 /發(fā)設(shè)計(jì) ( 1)發(fā)送 文本信息 。 ( 2)接收 文本信息 。 該實(shí)現(xiàn)方法共由 4 個(gè)類組成: SMSMIDlet、 SenderForm、 Receiver、 Inbox,它們之間的關(guān)系如圖 所示。該類 實(shí)現(xiàn)了CommandListener 接口,能夠處理“退出”、“菜單選擇”、“返回”等用戶界面命令。 ( 2) SenderForm 該類提供了編輯 文本信息 的用戶界面和發(fā)送 文本信息 的功能。這樣,可以避免阻塞用戶界面。 ( 3) Receiver 該類提供了打開(kāi)消息連接及接收 文本信息 的功能。如果沒(méi)有消息到達(dá),那么該 線程將處于等待狀態(tài);當(dāng)有消息到達(dá)時(shí),可以調(diào)用 handleMessage 方法通知線程接收消息,線程把消息存儲(chǔ)到收件箱中,通知用戶查看。 ( 4) Inbox 該類描述了收件箱,提供了查看接收的 文本信息 的功能。該收件箱只能存儲(chǔ)文本類型的消息。 程序打包及運(yùn)行 效 果 文本信息 收 /發(fā)程序的打包過(guò)程如下 : ( 1)啟動(dòng) J2ME 無(wú)線開(kāi)發(fā)工具 WTK,新建一個(gè)項(xiàng)目,項(xiàng)目名為 SMST, MIDlet類名為 。再打開(kāi)“推送注冊(cè)表”選項(xiàng)卡,注冊(cè)連接信息,如圖 。 江蘇大學(xué)本科畢業(yè)論文 18 圖 添加自定義屬性 圖 注冊(cè)入站連接 ( 3)將源代碼保存到 {toolkit}\apps\SMS\src 項(xiàng)目中。 ( 4)選擇開(kāi)發(fā)工具的菜單【項(xiàng)目】 【包】 【生成 包】對(duì)當(dāng)前項(xiàng)目進(jìn)行打包,分別生成 jar 文件和 jad 文件。使用號(hào)碼為 5550000 的模擬器向號(hào)碼為 5550001 的模擬器發(fā)送 文本信息 ,運(yùn)行效果如圖 。 [13] 江蘇大學(xué)本科畢業(yè)論文 19 (a)發(fā)送短消息 (b)安全提示 (c)收到一條短信息 (d)查看短消息 圖 發(fā)送、接收文本信息江蘇大學(xué)本科畢業(yè)論文 20 第 五 章 手機(jī)的網(wǎng)絡(luò)通信 本章運(yùn)用 MIDP 的網(wǎng)絡(luò)通信功能,實(shí)現(xiàn)手機(jī)與 PC 機(jī)、手機(jī)與手機(jī)之間的即時(shí)通信功能。但是,由于 HTTP 是一種基于請(qǐng)求和響應(yīng)模型的協(xié)議,客戶端向服務(wù)器端發(fā)送 請(qǐng)求,然后等待服務(wù)器端的響應(yīng),而服務(wù)器很難向客戶端主動(dòng)傳輸數(shù)據(jù),因?yàn)槠洳荒芎涂蛻舳私⑦B接。 傳輸控制協(xié)議 TCP 是一種面向連接的互聯(lián)網(wǎng)協(xié)議,所有傳輸?shù)臄?shù)據(jù)可以保證無(wú)誤地傳輸給另一方。套接字 (socket)代表 TCP 連接的一個(gè)端點(diǎn),一般服務(wù)器會(huì)在某個(gè)端口監(jiān)聽(tīng) socket 連接,如果接受了客戶端的連接請(qǐng)求, 就會(huì)為這個(gè)請(qǐng)求創(chuàng)建一個(gè) socket 與客戶端通信。 用戶數(shù)據(jù)報(bào)協(xié)議 UDP 是非面向連接的互聯(lián)網(wǎng)協(xié)議。但是,它并非像 TCP 協(xié)議那樣具有很高的可靠性。同樣 UDP也并非 中規(guī)定的必須被支持的,因此如果使用 UDP,則可能意味著要失去一些可移植性。并且利用 Socket 協(xié)議可以開(kāi)發(fā)比較富有彈性的網(wǎng)絡(luò)通信程序。 基于 Socket 協(xié)議的網(wǎng)絡(luò)通信 由于 Socket 使用的是 TCP 協(xié)議,而 TCP 協(xié)議是可以保證傳輸質(zhì)量的,所以江蘇大學(xué)本科畢業(yè)論文 21 使用 Socket 可以保證數(shù)據(jù)傳輸?shù)馁|(zhì)量。其中 ServerSocketConnection 用于建立連接服務(wù)器的應(yīng)用, SocketConnection 用于建立客戶端的應(yīng)用。典型的代碼如下: //在端口 50000建立監(jiān)聽(tīng)連接對(duì)象 ServerSocketConnection s= (ServerSocketConnection)(“ )。 //建立輸入數(shù)據(jù)流 DataInputStream is=()。 ( 2) 在客戶端建立與服務(wù)器進(jìn)行通信的 SocketConnection 連接,并在該連接上建立輸入輸出數(shù)據(jù)流。 //建立輸入數(shù)據(jù)流 InputStream is=()。 ( 3) 服務(wù)器與客戶端通信完畢,關(guān)閉所有連接。 ()。 服務(wù)器與客戶端通過(guò) Socket 進(jìn)行通信的示意圖如圖 所示。 應(yīng)用程序的設(shè)計(jì) 創(chuàng)建 SocketServer 類,在 SocketServer 類的 main()方法 中,用下列語(yǔ)句創(chuàng)建一個(gè) ServerSocket 對(duì)象: ServerSocket ss=new ServerSocket(12345)。創(chuàng)建了 ServerSocket 對(duì)象之后,就在一直循環(huán)的 while 循環(huán)中開(kāi)始監(jiān)聽(tīng)客戶端發(fā)送的請(qǐng)求了。當(dāng)監(jiān)聽(tīng)到客戶端發(fā)送的請(qǐng)求之后,ServerSocket對(duì)象的 accept()方法會(huì)返回一個(gè) Socket對(duì)象以與發(fā)送請(qǐng)求的客戶端進(jìn)行基于 Socket 協(xié)議的網(wǎng)絡(luò)通信。在 DataInputStream 對(duì)象和 DataOutputStream 對(duì)象中,分別使用相應(yīng)的reader()方法和 writer()方法可以得 到客戶端送來(lái)的信息和向客戶端發(fā)送的信息。源代碼見(jiàn)附錄 B。 當(dāng)用戶在 TextField 對(duì)象中輸入信息并單擊“發(fā)送”菜單項(xiàng)之后,系統(tǒng)會(huì)啟動(dòng) SocketThread 類這個(gè)線程來(lái)進(jìn)行網(wǎng)絡(luò)通信。 SocketThread 類 在 run()方法中,首先定義要連接的服務(wù)器端的 URL: String url=” 。 通過(guò) Connector 類的 open()方法和強(qiáng)制類型轉(zhuǎn)換,可以得到 一個(gè)連接在服務(wù)器端的 SocketConnection 對(duì)象。在 DataInputStream 對(duì)象和DataOutputStream 對(duì)象中,分別使用相應(yīng)的 reader()方法和 writer()方法可以接收服務(wù)器端送來(lái)的信息和對(duì)服務(wù) 器 端發(fā)送的信息。 SocketThread 類的源碼見(jiàn)附錄 B。 圖 客戶端的運(yùn)行結(jié)果 接著運(yùn)行客戶端,出現(xiàn)如圖 (a)所示的界面,輸入文字后,點(diǎn)擊【發(fā)送】,由于涉及網(wǎng)絡(luò)連接等敏感 API,啟動(dòng)時(shí)會(huì)出現(xiàn)提示信息,如圖 (b)所示。 江蘇大學(xué)本科畢業(yè)論文 24 (a)客戶端的運(yùn)行界面 (b)提示信息 (c) 消息發(fā)送成功 圖 客戶端的運(yùn)行結(jié)果 最后,服務(wù)器端的運(yùn)行結(jié)果如圖 。作為客戶端的手機(jī)上運(yùn)行的是 SocketClient 類,而將 SocketServer 類運(yùn)行在另一部手機(jī)上,作為服務(wù)器端。 Socket 協(xié)議的服務(wù)器端的功能是通過(guò) ServerSocketConnection 對(duì)象實(shí)現(xiàn)的,通過(guò) Connector 類的 open()方法和強(qiáng)制轉(zhuǎn)換類型轉(zhuǎn)化,可以得到一個(gè)ServerSocketConnection 對(duì)象,在接 下來(lái)的 while 循 環(huán)中,可 以通過(guò)ServerSocketConnection 對(duì)象的 acceptAndOpen()方法等待與服務(wù)器端連接的客戶端。通過(guò) SocketConnection 對(duì)象的 openDataInputStream()方法和 openDataOutputStream()方法 ,得到相應(yīng)的DataInputStream 對(duì)象和 DataOutputStream 對(duì)象。 [4] 當(dāng) SocketServer 類運(yùn)行時(shí),會(huì)啟動(dòng) Sender 線程類來(lái)完成服務(wù)器的功能。 Sender 類 Sender 類是用來(lái)完成輸出數(shù)據(jù)流的發(fā)送功能的,當(dāng)服務(wù)器端或客戶端運(yùn)行時(shí),就會(huì)啟動(dòng)該類。 SocketClient 類 在客戶端,提供一個(gè) TextField 對(duì)象供用戶輸入要發(fā)送的信息, 同時(shí)創(chuàng)建一個(gè) StringItem 對(duì)象以顯示從服務(wù)器端得到的信息。通過(guò) SocketConnection 對(duì)象的openDataInputStream()方法和 openDataOutputStream()方法 ,得到相應(yīng)的DataInputStream 對(duì)象和 DataOutputStream 對(duì)象。 服務(wù)器端和客戶端一旦建立連接 ,雙方就可以使用套接字連接進(jìn)行數(shù)據(jù)傳遞了。此外,在發(fā)送線程中還設(shè)置了同步方法,用于保證發(fā)送數(shù)據(jù)的完整性。 [5] 功能的實(shí)現(xiàn) 分別啟動(dòng)服務(wù)器和客戶機(jī)程序,由于涉及網(wǎng)絡(luò)連接等敏感 API,啟動(dòng)時(shí)會(huì)出現(xiàn)提示信息。點(diǎn)擊【 Yes】后,服務(wù)器和客戶機(jī)成功連接,如圖 (c)和 (d)所示。當(dāng)任何一方退出程序后,套接字連接關(guān)閉,另一方也無(wú)法在發(fā)送數(shù)據(jù),只能選擇退出程序。 由于平時(shí)的實(shí)踐機(jī)會(huì)有限,加之 Java 是最近新學(xué)習(xí)的一門(mén)語(yǔ)言。筆者將會(huì)帶著這些不足和疑問(wèn)走上工作崗位,相信在 今后工作 和學(xué)習(xí) 中 一定會(huì)慢慢將其理順、弄通的。 (1)本次的畢業(yè)設(shè)計(jì)中,對(duì)于 J2ME 的一些基礎(chǔ)知 識(shí),只是很籠統(tǒng)的去介紹,并沒(méi)有給予一定的范例。 (2)由于對(duì) J2ME 開(kāi)發(fā)語(yǔ)言和網(wǎng)絡(luò)編程技
點(diǎn)擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1