999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

自建IM服務(wù)器的猿學(xué)習(xí)App的設(shè)計與實現(xiàn)

2020-02-22 03:35:44梁振偉
電腦知識與技術(shù) 2020年36期

梁振偉

摘要:IM服務(wù)器就是一臺獨立運行的程序,接收用戶發(fā)送給服務(wù)器的信息,并將其轉(zhuǎn)發(fā)至其他用戶,而目前國內(nèi)的IM服務(wù)器一般都是由其他大廠進行派發(fā),程序需要進行二次開發(fā),用戶相關(guān)信息放置在一個配置文件里,安全性相對較低。該文通過對編程教育類App進行分析,分別從學(xué)生、老師的角度出發(fā),尋找合理有效的解決方案。并通過自建IM服務(wù)器的方法,以此實現(xiàn)即時通信。

關(guān)鍵詞:即時通信;移動學(xué)習(xí);編程教育

中圖分類號:TP311? ? ? ? 文獻標(biāo)識碼:A

文章編號:1009-3044(2020)36-0075-02

Abstract: IM server is an independent running program that receives information sent by users to the server and forwards it to other users. At present, domestic IM servers are generally distributed by other large factories. The program needs secondary development, user-related information placed in a configuration file, relatively low security. By analyzing the App of programming education, this paper looks for reasonable and effective solutions from the perspective of students and teachers. And through the self-built IM server method, so as to achieve instant messaging.

Key words: Instant Messaging; mobile learning; programming education

1 猿學(xué)習(xí)App的研究

對于類似學(xué)習(xí)移動教育App的設(shè)計,本系統(tǒng)對國內(nèi)一些相關(guān)軟件進行了系統(tǒng)分析。比如CSDN的移動App客戶端,主要功能為熱點資訊、資料查閱、博客查看、課程學(xué)習(xí)等相關(guān)功能。再如在線編程App,實現(xiàn)了資訊、網(wǎng)頁編程、學(xué)習(xí)資源、代碼文檔等功能。雖然目前這些App的功能相對完善,但是服務(wù)的主要對象不是高校群體,很顯然其沒有合理解決老師與學(xué)生的問題。在查看并分析了這些App的不足后,本系統(tǒng)根據(jù)實際情況,為了處理這些遺留問題,在保留借鑒了一些功能的同時,針對性地開發(fā)了一些額外功能,以保證這些問題可以很好地解決。

1.1 猿學(xué)習(xí)App的需求分析

對于本App,服務(wù)的對象主要分為兩個,學(xué)生與老師。對于學(xué)生而言,主要的問題是資源缺少、課程單一。對于老師而言,則是課程少,知識點多,復(fù)雜,無法短時間內(nèi)保證學(xué)生完全掌握課堂知識。所以為了處理這些問題,本系統(tǒng)主要設(shè)置了聊天室、好友添加、視頻播放、資訊信息等相關(guān)功能進行處理,老師可以在聊天室與學(xué)生進行交流,及時了解學(xué)生課堂上的疑點、難點,幫助學(xué)生及時答疑。而好友功能的設(shè)置則是為了幫助用戶間的相互交流學(xué)習(xí),視頻觀看可以讓用戶在線觀看學(xué)習(xí)資源,提高知識水平。熱點資訊讓用戶第一時間了解計算機最新發(fā)展。學(xué)習(xí)資源包括軟考資料、經(jīng)驗總結(jié)、基礎(chǔ)教程等,幫助學(xué)生根據(jù)自己需求進行針對性的學(xué)習(xí)。

1.2 猿學(xué)習(xí)App模塊層次結(jié)構(gòu)

本系統(tǒng)的層次結(jié)構(gòu),按照功能進行分析,可以大致分為客戶端、服務(wù)器、數(shù)據(jù)庫、瀏覽器。具體如圖1所示。

服務(wù)器上,主要使用了Tomcat服務(wù)器,Openfire服務(wù)器等,對于Tomcat服務(wù)器而言,采用Java經(jīng)典三層架構(gòu)(Web,Dao,Service)進行開發(fā),Dao用于數(shù)據(jù)庫的一系列操作,Service負(fù)責(zé)處理業(yè)務(wù)層,Web負(fù)責(zé)后臺數(shù)據(jù)的接收、修改。對于Openfire服務(wù)器而言,則是使用Spark,Smack相結(jié)合的方式實現(xiàn)聊天相關(guān)功能,Spark服務(wù)于管理員,方便管理員對其他賬號的管理,以及聊天室的監(jiān)聽查看,Smack與Android客戶端結(jié)合,負(fù)責(zé)接收Openfire服務(wù)器的數(shù)據(jù),以及聊天信息的發(fā)送。

在客戶端上,主要的Android客戶端使用Xutils,Gson,ijkplayer,Smack,ShareSDK這類第三方庫,Xutils負(fù)責(zé)客戶端數(shù)據(jù)的發(fā)送,傳輸以及服務(wù)器的數(shù)據(jù)獲取。Gson負(fù)責(zé)服務(wù)器數(shù)據(jù)的解析。Ijkplayer負(fù)責(zé)視頻的播放,Smack負(fù)責(zé)向Openfire服務(wù)器進行XML數(shù)據(jù)發(fā)送、接收,以此實現(xiàn)聊天相關(guān)的操作。除此之外,我們還使用了SharedPreferences、SQLite進行用戶數(shù)據(jù)的保存以及聊天記錄的保存。ShareSDK負(fù)責(zé)分享功能的實現(xiàn)。

數(shù)據(jù)庫上,本系統(tǒng)使用了Mysql、SQLite數(shù)據(jù)庫。Mysql用于服務(wù)器上存儲用戶好友信息,用戶賬號密碼等數(shù)據(jù)。SQLIte則是保存本地用戶信息,聊天歷史等服務(wù)。

瀏覽器上使用Summer Note,jQuery等庫實現(xiàn)。Summer Note負(fù)責(zé)發(fā)布教程等需要用到網(wǎng)頁編輯的功能,jQuery負(fù)責(zé)廣告輪播、Ajax(異步加載)等功能實現(xiàn)。

1.3 猿學(xué)習(xí)App的功能實現(xiàn)

對于本系統(tǒng)而言,主要實現(xiàn)的功能有:在線聊天,好友功能,聊天室,視頻觀看,熱點資訊,學(xué)習(xí)資源,在線測試等。對于在線聊天、聊天室,本系統(tǒng)在服務(wù)器上額外搭建一個Openfire服務(wù)器進行聊天實現(xiàn)。用戶發(fā)送的信息將會被Openfire服務(wù)器接收,并根據(jù)類型進行轉(zhuǎn)發(fā)給其他用戶。視頻觀看,則是從服務(wù)器上獲取數(shù)據(jù),之后根據(jù)用戶點擊的URL,發(fā)送請求,讓服務(wù)器返回資源給客戶端,最后使用Android第三方插件Ijkplayer進行視頻的播放。熱點資訊、學(xué)習(xí)資源這兩個功能的主要原理都是從服務(wù)器發(fā)送請求,服務(wù)器在返回json類型的數(shù)據(jù)給Android客戶端,客戶端使用Gson插件進行json解析,在渲染頁面給用戶展示。在線測試則是根據(jù)用戶所選題目類型,進行隨機題目選取,根據(jù)用戶所選結(jié)果進行分析,給出合理的信息解答。

2 IM服務(wù)器

在目前主流IM服務(wù)器的選擇上,主要是由騰訊云、阿里云、網(wǎng)易云等大的運營商進行提供,對于開發(fā)者而言,不僅需要額外去運營商網(wǎng)站上進行文件配置,獲取key密鑰,而且還需要自己設(shè)計加密方式對信息進行額外加密、保存。除此之外,黑客在對程序進行反編譯的時候,可能會根據(jù)key密鑰信息將數(shù)據(jù)進行修改、盜取,存在一定的安全隱患。而為了解決這一問題,通過查閱大量資料后,了解,發(fā)現(xiàn)自建IM服務(wù)器其實可以有一定的可行性。自建的IM服務(wù)器,用戶信息保存在服務(wù)器上,而且對用戶信息進行了多次加密。所以獨立開發(fā)一臺IM服務(wù)器實現(xiàn)即時通信,較好地保護用戶信息安全,不失為一種可行的方式。

2.1 IM服務(wù)器的搭建

對于自建IM服務(wù)器,本系統(tǒng)選擇的是Apache公司下的Opnefire服務(wù)器,用其進行IM開發(fā)。Opnefire服務(wù)器遵循了XMPP協(xié)議,數(shù)據(jù)在傳輸時使用的是XML的形式,靈活,方便。除此之外,由于其繼承了XML的特點,所以在傳輸信息上也是可以的,特別是發(fā)送擴展信息,解析,處理客戶端請求上有著更好的效率。而如何搭建一個Opnefire服務(wù)器,主要分為以下幾步:

首先,是搭建Opnefire服務(wù)器運行的環(huán)境。Opnefire服務(wù)器主要使用Java作為運行環(huán)境,Mysql作為數(shù)據(jù)庫。所以要下載Java、Mysql的安裝包,配置Java環(huán)境變量,設(shè)置Mysql監(jiān)聽端口。之后去Apache官網(wǎng)下載對應(yīng)版本的Opnefire運行文件,打開運行,設(shè)置端口號,配置Mysql位置,以及密鑰信息,最后根據(jù)實際情況,去客戶端導(dǎo)入相關(guān)實現(xiàn)依賴文件或者下載相關(guān)運行文件即可。

2.2 自建IM服務(wù)器的安全性分析

對于自建IM服務(wù)器,可以與傳統(tǒng)運營商的IM服務(wù)器都進行一次假設(shè)。對于自建IM服務(wù)器而言,黑客通過反編譯破解了程序,獲取了key密鑰信息,其也只可以通過密鑰信息查詢到加密了的信息。如果想要對信息進行查看,需要額外進行解密操作,由于服務(wù)器對于信息加密次數(shù)過多,黑客很難獲取到真實的信息。再者,黑客如果真的拿到了key密鑰,偽裝成開發(fā)者登錄Opnefire服務(wù)器,也需要額外進行一次登錄遠(yuǎn)程服務(wù)器。而對于傳統(tǒng)運營商的IM服務(wù)器,黑客獲取了key密鑰后,通過密鑰查詢到加密后的信息。但是只要偽裝成開發(fā)者,運營商為了方便開發(fā)者,不需要額外操作,就會將加密信息自動進行解密展示。所以從這個角度出發(fā),自建IM服務(wù)器的安全性相對較高,用戶信息可以很好地被保護。

2.3 自建IM服務(wù)器的應(yīng)用

對于自建IM服務(wù)器的應(yīng)用,以O(shè)penfire為例,一般分為三種情況,一種是PC端使用,一種是網(wǎng)頁瀏覽器使用,最后是移動應(yīng)用的使用。對于PC端而言,進行即時通訊,需要結(jié)合Spark使用,安裝Spark客戶端之后,只需要填入IP信息、用戶名、密碼即可登錄使用,就如PC上的QQ軟件一樣,使用方便、快捷。網(wǎng)頁瀏覽器上,則是把用戶發(fā)送的信息先轉(zhuǎn)換為XML的形式,再使用key密鑰,將信息發(fā)送給服務(wù)器接收,服務(wù)器再把信息轉(zhuǎn)發(fā)至其他用戶。移動應(yīng)用則是導(dǎo)入Smack的相關(guān)依賴,通過Smack內(nèi)部的方法,連接Openfire服務(wù)器,之后使用HTTP將信息發(fā)送給服務(wù)器接收即可。對于開發(fā)者而言,操作簡單、方便、快捷,而且使用方式多樣。

3 總結(jié)

在目前移動應(yīng)用飛速發(fā)展的大環(huán)境下,移動服務(wù)將會成為未來發(fā)展的一種趨勢,開發(fā)一個面向高校學(xué)生群體的學(xué)習(xí)類App,為學(xué)生、老師提供一個學(xué)習(xí)交流的平臺,也不失為一種合理的嘗試。而自建IM服務(wù)器也將會成為一種發(fā)展趨勢,越來越多的企業(yè)、開發(fā)者為了開發(fā)便利、安全性的考慮會自建相關(guān)的IM服務(wù)器。而IM服務(wù)器的種類也會更加多樣,功能安全性也會更高。

參考文獻:

[1] 梁莎.App界面設(shè)計課程的探索與思考[J].高教學(xué)刊,2015(14):73-74.

[2] 胡曉輝.基于Android的C語言學(xué)習(xí)App開發(fā)研究[J].電腦知識與技術(shù),2019,15(22):82-83,86.

[3] 于瀟東.移動學(xué)習(xí)App在國家開放大學(xué)教育中的應(yīng)用[J].內(nèi)蒙古電大學(xué)刊,2019(2):106-108,113.

[4] 張?zhí)煜椋聞P東,徐志良.基于Android系統(tǒng)下的夜跑App[J].電子測試,2019(2):89-90,88.

【通聯(lián)編輯:代影】

主站蜘蛛池模板: 第一页亚洲| 在线免费看黄的网站| 国产情侣一区| 欧美一区二区福利视频| 视频在线观看一区二区| 尤物国产在线| 亚洲一区二区三区中文字幕5566| 欧美亚洲一二三区| 在线精品亚洲国产| 老司机精品一区在线视频| 精品福利视频导航| 免费看黄片一区二区三区| 尤物精品国产福利网站| 久久免费看片| 狠狠色噜噜狠狠狠狠色综合久| 国产网站一区二区三区| 福利国产微拍广场一区视频在线| 欧美日韩在线成人| 一级爱做片免费观看久久| 欧美成人午夜影院| 综合成人国产| 国产欧美日韩91| 美女黄网十八禁免费看| 国产精品无码AⅤ在线观看播放| 国产丰满成熟女性性满足视频| 亚洲精选无码久久久| 热re99久久精品国99热| 欧美激情,国产精品| 国产精品一老牛影视频| 国产成年女人特黄特色大片免费| 国产亚洲视频在线观看| 亚洲狠狠婷婷综合久久久久| 天堂岛国av无码免费无禁网站| 成人免费视频一区二区三区 | 人与鲁专区| 呦视频在线一区二区三区| 91小视频版在线观看www| 中文字幕无码制服中字| 亚洲动漫h| 国产一级一级毛片永久| 国产男人天堂| 亚洲欧洲综合| 日韩精品亚洲人旧成在线| 色哟哟国产精品一区二区| 色欲不卡无码一区二区| 精品成人一区二区三区电影 | 夜精品a一区二区三区| 亚洲国产中文精品va在线播放| 天天躁日日躁狠狠躁中文字幕| 久久无码免费束人妻| 香蕉久久永久视频| 四虎精品国产AV二区| 日韩精品免费一线在线观看| 日韩福利在线观看| 国产成人免费手机在线观看视频 | 中字无码av在线电影| 亚洲精品爱草草视频在线| 亚洲国产中文综合专区在| 欧洲亚洲一区| www.日韩三级| 成人免费视频一区二区三区| A级毛片高清免费视频就| 国产在线观看第二页| 美女被躁出白浆视频播放| 欧美va亚洲va香蕉在线| 日韩欧美中文字幕一本| 亚洲成a人在线观看| 国产综合精品日本亚洲777| 久久黄色毛片| 片在线无码观看| 国产精品美女网站| 鲁鲁鲁爽爽爽在线视频观看 | 久久国产毛片| aa级毛片毛片免费观看久| 国产美女在线免费观看| 亚洲AⅤ无码国产精品| 日本在线免费网站| 亚洲综合18p| 国产在线无码av完整版在线观看| 操操操综合网| 干中文字幕| 亚洲人成影院午夜网站|