




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、 智能聊天 智能聊天,一個神奇的話題 在今天,有智能汽車,有智能電視,有智能家居,那么智能聊天呢?當你心情低落,當你迷失道路,當你需要交流很多,很多,我想:智能聊天一個神奇的話題,一個有未來的話題。getting startedstep 1: 介紹android手機軟件的現(xiàn)狀和智能聊天的發(fā)展step 2: 相關技術背景,介紹了開發(fā)本手機app用到的技術、平臺。step 3: 系統(tǒng)需求分析與設計,介紹了功能需求和性能需求。step 4: 程序的詳細設計和實現(xiàn),介紹了程序各個模塊的實現(xiàn)過程。step 5: 程序實現(xiàn)與測試,介紹系統(tǒng)的主要實現(xiàn)界面和系統(tǒng)的測試。step 6: 展望智能聊天的未來。3s
2、tep 1: android手機軟件的現(xiàn)狀和智能聊天的發(fā)展android是一種基于linux的自由及開放源代碼的操作系統(tǒng),主要使用于移動設備,如智能手機和平板電腦,由google公司和開放手機聯(lián)盟領導及開發(fā)。現(xiàn)在它擁有全球最大的移動端的市場份額!lets see androidsource: http:/ andy rubin等人創(chuàng)建android公司,并組建android團隊2007年11月5日 谷歌公司正式向外界展示了android的操作系統(tǒng),創(chuàng)立了開放手持設備聯(lián)盟(open handset alliance)2008年, 在googlei/o大會 谷歌正式發(fā)布了android 1.0系統(tǒng)
3、2011年1月 android系統(tǒng)設備的用戶總數(shù)達到了1.35億,android系 統(tǒng)已經(jīng)成為智能手機領域占有量最高的系統(tǒng)。2011年8月2日, android手機已占據(jù)全球智能機市場48%的份額,終結了symbian(塞班系統(tǒng))的霸主地位,躍居全球第一。2015年 發(fā)布了最新的androidl版本智能聊天-向往的話題世界上最早的聊天機器人誕生于20世紀80年代,這款機器人名為“阿爾貝特”,用basic語言編寫而成。1950年,圖靈在哲學刊物思維(mind)上發(fā)表了“計算機器與智能”的文章,提出了后來經(jīng)典的圖靈測試交談能檢驗智能,如果一臺計算機能像人一樣對話,它就能像人一樣思考。他由此獲稱“人
4、工智能之父”。1991年,美國科學家兼慈善家休勒布納設立人工智能年度比賽勒布納獎,號稱是對圖靈測試的第一種實踐,旨在獎勵最擅長模仿人類真實對話場景的機器人。智能聊天-向往的話題source: http:/ 說白了,聊天機器人產(chǎn)生的原因是,研發(fā)者把自己感興趣的回答放到數(shù)據(jù)庫中,當一個問題被拋給聊天機器人時,它通過算法,從數(shù)據(jù)庫中找到最貼切的答案,回復給它的聊伴。 此外,聊天機器人的成功之處在于,研發(fā)者將大量網(wǎng)絡流行的俏皮語言加入詞庫,當你發(fā)送的詞組和句子被詞庫識別后,程序將通過算法把預先設定好的回答回復給你。而詞庫的豐富程度、回復的速度,是一個聊天機器人能不能得到大眾喜歡的重要因素。千篇一律的回
5、答不能得到大眾青睞,中規(guī)中矩的話語也不會引起人們共鳴。此外,只要程序啟動,聊士們24小時在線隨叫隨到,堪稱貼心之至。step 2: 本手機app用到的技術、平臺。智能聊天開發(fā)平臺:eclipse下的android開發(fā)環(huán)境智能聊天開發(fā)所用語言:java9step 3: 程序需求分析與設計,介紹app功能 智能聊天app本身創(chuàng)意簡單獨特,玩法簡單,內容引人入勝。 app的策劃主要包括程序的規(guī)則、目標受眾、運行的目標平臺、采用的呈現(xiàn)技術、操作方式等幾個方面程序需求分析(1)程序規(guī)則,本程序為智能聊天,因此不存在很復雜的規(guī)則。這個程序在進入主界面后,模擬智能聊天模式,主動發(fā)送消息給聊天機器人,機器人反
6、饋消息于聊天者,最后在屏幕上顯示。(2)難度設計,本程序難度簡單,輸入文字進行對話即可,簡單方便。非常便于人們交流。(3)目標受眾,這個程序受眾主要為年輕人??紤]到受眾面廣的原因,將畫面設定為卡通畫形式,使畫面更加年輕化。 (4)運行的目標平臺,本程序的目標平臺為android4.0以上的android手機程序使用eclipse作為主要的開發(fā)工具,使用photo shop作為圖片處理工具。功能需求分析良好的用戶界面,能夠在視覺上吸引玩家。為了使界面簡潔美觀,需要在主界面中添加背景圖片來渲染程序的氣氛,同時為了便于用戶的操作,需要設置模擬qq的對話框模式進行發(fā)送數(shù)據(jù),這樣的設置讓用戶一目了然。系
7、統(tǒng)結構設計(1)進入app,輸入準備發(fā)送的消息;(2)post數(shù)據(jù),app獲取用戶輸入的數(shù)據(jù)進行發(fā)送的遠程數(shù)據(jù)庫。 (3)數(shù)據(jù)匹配,服務器進行數(shù)據(jù)篩選,達到智能回復效果;(4)顯示數(shù)據(jù),將服務器獲取的數(shù)據(jù)下載,顯示在用戶界面。13step 4: 程序的詳細設計和實現(xiàn)source: http:/ 界面布局的實現(xiàn)2 程序功能的實現(xiàn)14界面布局的實現(xiàn) - part 1sample code - part 1 private final int splash_display_lenght =3000; / 延遲2秒super.oncreate(savedinstancestate);setconten
8、tview(r.layout.activity_splash);new handler().postdelayed(new runnable() public void run() intent mainintent = new intent(splashactivity.this,mainactivity.class);splashactivity.this.startactivity(mainintent);splashactivity.this.finish();, splash_display_lenght);16sample code - part 1 17程序功能實現(xiàn) - part
9、 21 網(wǎng)絡判斷模塊的實現(xiàn)2 數(shù)據(jù)api接口示例3 返回json數(shù)據(jù)解析18網(wǎng)絡判斷模塊的實現(xiàn) - part 2.1 connectivitymanager connectivitymanager = (connectivitymanager) context.getsystemservice(context.connectivity_service); if (connectivitymanager = null) return false; else / 獲取networkinfo對象 networkinfo networkinfo = connectivitymanager.getall
10、networkinfo(); 數(shù)據(jù)api接口示例 - part 2.2source: http:/ string apikey = 開發(fā)者注冊帳號,激活之后即可獲得; string info = urlencoder.encode(北京今日天氣, utf-8); string geturl = http:/ + apikey + &info= + info; url geturl = new url(geturl); httpurlconnection connection = (httpurlconnection) geturl.openconnection(); connectio
11、n.connect();數(shù)據(jù)api接口示例 - part 2.2包裝發(fā)送數(shù)據(jù):private static string setparams(string msg) string url=;try url = url+?key=+api_key+&info=+urlencoder.encode(msg, utf-8); catch (unsupportedencodingexception e) e.printstacktrace();return url;數(shù)據(jù)api接口示例 - part 2.2/利用http發(fā)送請求try /url鏈接前的包裝.url urlnet = new .u
12、rl(url);/返回一個 urlconnection 對象,它表示到 url 所引用的遠程對象的httpurlconnection conn=(httpurlconnection)urlnet.openconnection();/conn參數(shù)conn.setreadtimeout(5*1000);conn.setconnecttimeout(5*1000);conn.setrequestmethod(get);22數(shù)據(jù)api接口示例 - part 2.2/獲得服務器的返回流is =conn.getinputstream();int len=-1;byte buf = new byte128;
13、baos = new bytearrayoutputstream();while(len=is.read(buf)!=-1)baos.write(buf,0,len);baos.flush();result = new string(baos.tobytearray();23返回json數(shù)據(jù)解析: - part 2.3引入第三方數(shù)據(jù)包:24返回json數(shù)據(jù)解析: - part 2.3public static chatmessage sendmessage(string msg)chatmessage chatmessage = new chatmessage();string jsonres
14、 =doget(msg);gson gson=new gson();result result = null;try /傳來的數(shù)據(jù)利用gson讀取出來result =gson.fromjson(jsonres, result.class);chatmessage.setmsg(result.gettext();25step 5: 程序實現(xiàn)與測試在android開發(fā)項目中,經(jīng)常會測試,而一次又一次的運行模擬器,不但會需要大量時間,主要還會浪費寫代碼時間,工作效率降低,所以如果項目中有用到測試數(shù)據(jù)的時候,可以先進行單元測試,如果可以正常輸出數(shù)據(jù)了,然后再到ui中執(zhí)行,這樣會提高一些時間,從而提高工
15、作效率。26sample code - part public void testsendinfo()/靜態(tài)方法跨包還可以這樣調用,interesting!string res = httprequestutils.doget(給我講個笑話);log.e(tag,res);/27單元測試返回數(shù)據(jù) step 6: 總結畢業(yè)設計開發(fā)在大學期間的學習中做過很多課程設計,大多規(guī)模很小。在數(shù)各種應用軟件和程序中,其各個模塊間的聯(lián)系十分緊密,代碼重復執(zhí)行率高,當經(jīng)過無數(shù)次的調試、修改后,能最終看到成品,有無比自豪的心情。大學期間做過的課程設計,思想大致相似,變化范圍有限,沒有太多自己可發(fā)揮的余地。大家作品
16、的最終結果都離不開同一個模式。相比一些數(shù)據(jù)庫軟件,聊天app的設計有很多人情色彩和藝術思想的發(fā)揮,正式商業(yè)的軟件的人性化界面和各個程序間迥異的結構都會讓人有去開發(fā)的沖動經(jīng)過2個多月的努力,我的畢業(yè)設計工作即將完成。在本次畢業(yè)設計之前我對android的了解幾乎為零,對圖片處理也很不熟悉,使得我在畢業(yè)設計在開始階段十分的困難。在花了大量的時間查閱資源后,我又發(fā)現(xiàn)我對程序開發(fā)需要的技術和大量圖片無從下手,對于畢業(yè)設計的工作一度感到力不從心,不過終于借助android專業(yè)書籍和源代碼的閱讀,并且在導師的耐心指導和幫助下完成了此次的畢業(yè)設計。29step 6: 總結畢業(yè)設計開發(fā) 由于對android開發(fā)的經(jīng)驗不足,我碰到了很多問題,走不了
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權】 ISO/IEC 23090-5:2025 EN Information technology - Coded representation of immersive media - Part 5: Visual volumetric video-based coding (V3C) and video-based point cloud com
- GB/T 36800.3-2025塑料熱機械分析法(TMA)第3部分:針入溫度的測定
- 鑄造定點澆筑施工方案
- 木質坐凳施工方案
- 海淀池子防腐施工方案
- 園林家具施工方案
- 外立面改造施工方案
- 二零二五年度設施農業(yè)土地承包經(jīng)營合同
- 2025年度生豬養(yǎng)殖產(chǎn)業(yè)鏈金融服務合同
- 二零二五年度航空航天市場推廣分紅權協(xié)議書
- ?;钒踩芾碇贫确段暮喍涛;钒踩芾碇贫群蛵徫话踩僮饕?guī)程(3篇)
- 平岡中學教師任職條件
- 小老鼠找朋友 演示文稿
- GB/T 14163-2009工時消耗分類、代號和標準工時構成
- 教科版科學五年級下冊《生物與環(huán)境》單元教材解讀及教學建議
- 英語四六級翻譯技巧課件
- 讀后續(xù)寫(2022新高考I卷)講解課件 高三英語寫作專項
- 三角形的內角和-課件
- 兒科-補液-液體療法課件
- 口腔健康教育和促進
- 廣州市建設項目代建合同穗政合同示范文本004號
評論
0/150
提交評論