嵌入式網絡撥號功能設計與實現(xiàn)
⑤成員函數(shù):start
功能:開啟網絡服務。如果網絡空閑,則開始新的網絡服務。如果有相同網絡服務在運行,應用程序將使用已存在的網絡服務。
原型:Static void start(const Quuid&uuid,const QString&service=QString::null,const QString&password=QString::null)
⑥成員函數(shù):stop
功能:停止網絡服務。如果有其他應用程序使用該網絡服務,網絡服務將不會斷開,僅僅終止該應用程序。否則停止網絡服務。
原型:static void stop(const QUuid&uuid)
第二:類NetworkServe主要成員函數(shù):
①成員函數(shù):emitFailed
功能:發(fā)送失敗信息。
原型:void emitFailed(QUuid&uuid,intstatus)
②成員函數(shù):examineNetworks
功能:檢查網絡配置。
原型:void examineNetworks()
③成員函數(shù):networkOnline
功能:判斷網絡是否連接。
原型:bool networkOnline()const
④成員函數(shù):start
功能:開始網絡服務。
原型:void start(QUuid&uuid,const QString&file,const QStringpassword)
⑤成員函數(shù):stop
功能:停止網絡服務。
原型:void stop()
⑥成員函數(shù):timeEvent
功能:若網絡連接,開啟定時器進行監(jiān)控;否則網絡斷開,終止定時器,并發(fā)送網絡斷開消息。
原型:void timerEvent(QTimerEvent*timer)
⑦成員函數(shù):receive
功能:接收應用進程發(fā)送的網絡信息。
原型:void NetworkServer::receive(const QCStringmsg,const QByteArray&data)
(3)dailup.cpp主要是進行撥號,由類PppMon,
Dailup和DialupImpl構成。定義如下:
①類PppMon。功能:監(jiān)視網絡狀態(tài);
②類Dialup。功能:實現(xiàn)一個撥號窗體;
③類DialupImpl。功能:撥號實現(xiàn)。
(4)網絡撥號建立
①應用程序發(fā)起上網請求。
②如果當前網絡空閑,則自動撥號(配置撥號文件、開啟網絡狀態(tài)監(jiān)控和發(fā)送AT指令連接)。
③如果網絡已被占用,則表明其他應用程序在使用網絡。
此時需判斷當前上網方式:CSD(按照時長來收費)或GPRS(按照產生的流量來收費)。若為CSD/GPRS方式,且該應用程序也是以CSD/GPRS方式上網,則不要建立撥號連接,可共同使用網絡;若為CSD/GPRS方式,而該應用程是以GPRS/CSD方式上網,則拒絕上網請求。撥號建立如圖3所示。本文引用地址:http://www.ex-cimer.com/article/150808.htm linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評論