<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 一步步教你為網(wǎng)站開發(fā)Android客戶端

          一步步教你為網(wǎng)站開發(fā)Android客戶端

          作者: 時間:2016-10-08 來源:網(wǎng)絡 收藏

          注:本文來自友盟-安卓巴士教程大賽第一名獲獎作品,作者安卓巴士的ID為liupeinye。推薦給所有剛剛開始接觸Android開發(fā)的朋友們!

          本文引用地址:http://www.ex-cimer.com/article/201610/305463.htm

          本文面向Android初級開發(fā)者,有一定的Java和Android知識即可。

          文章覆蓋知識點:HttpWatch抓包,HttpClient模擬POST請求,Jsoup解析HTML代碼,動態(tài)更新ListView

          背景介紹:客戶端(Client)或稱為用戶端,是指與服務器相對應,為客戶提供本地服務的程序。而android系統(tǒng)上的90%客戶端軟件都有一個共性,就是為了改善網(wǎng)頁在android系統(tǒng)上體驗不佳而生,最具有影響力的軟件有:新浪微博、人人網(wǎng)、淘寶等,這類軟件最突出的特點就是,先有網(wǎng)站再有軟件。由于網(wǎng)絡技術(shù)發(fā)展的多樣性,手機瀏覽器往往無法跟隨它的步伐,為改善用戶體驗,網(wǎng)站客戶端軟件印運而生。

          以下內(nèi)容100%原創(chuàng),并在安卓巴士論壇首發(fā),如需轉(zhuǎn)載,請注明作者和出處。謝謝合作。

          開發(fā)Android網(wǎng)站客戶端通常有兩種方法:第一種,通過服務端的開放平臺,調(diào)用提供的API接口來開發(fā),比如說open sina;第二種,服務端沒有提供任何接口,你也沒有服務端任何數(shù)據(jù)庫訪問權(quán)限,就是一個純純粹粹的網(wǎng)站,要你做客戶端。今天,我要和大家分享的正是第二種情況。

          這是一個簡單的示意圖,告訴我們,數(shù)據(jù)是由網(wǎng)頁從數(shù)據(jù)庫中取出,我們要為這個系統(tǒng)做客戶端,我們就應該這樣去改造它。

          通過這樣間接的方法來訪問數(shù)據(jù)庫,只要網(wǎng)頁能看到的內(nèi)容,我們的客戶端都能獲取到,而UI是由你自行制作,就可以使使用體驗上一個臺階。

          既然網(wǎng)頁是我們的數(shù)據(jù)樞紐,我們就從網(wǎng)頁分析著手。

          該教程來自本人項目-掌上民大-真實經(jīng)驗,所以用項目中的”掌上圖書館”板塊來示范。

          該項目任務為中南民族大學圖書館圖書查詢功能制作客戶端。

          首先打開該網(wǎng)址http://www.lib.scuec.edu.cn/,我們會看到主界面

          正中間就是查詢?nèi)肟冢覀冚斎?rdquo;android”進行查詢

          得到結(jié)果的網(wǎng)頁,但我們能發(fā)現(xiàn),這個頁面是ILAS圖書管理系統(tǒng),所以真正的入口并不是上面紅圈的地方。

          所以我繼續(xù)找,經(jīng)過短暫的觀察,發(fā)現(xiàn)入口在這里

          我們點擊進入

          果然就是這貨,我們點擊書目查詢

          就是它了。真正的入口就在這里,這時我們打開HttpWatch軟件,點”Record”,在搜索框里輸入”android”,點擊查詢,抓取以”android”為關(guān)鍵字搜索時瀏覽器的所有包。待結(jié)果界面載入完成后,HttpWatch上就會出現(xiàn)如下信息

          我們先看Summary選項卡,我們可以初步了解,這是一個POST請求(Http請求中的一種,另一種是GET),POST到的網(wǎng)址是http://coin.lib.scuec.edu.cn/cgi-bin/IlaswebBib。

          這樣我們的思路就清晰了,我們的客戶端需要模擬瀏覽器,向上述地址POST一個包,那個地址肯定會返回一個Content給我們,不出意外的話,Content里面就是我們要的書目信息。那么,瀏覽器POST上去的內(nèi)容是什么呢?我們點擊這條POST請求,看詳細信息,

          由于是POST請求,我們先看POST DATA,里面是以鍵值對的形式存儲的,這里顯示了我們?yōu)g覽器在我們搜索”android”時,POST的所有數(shù)據(jù)。那這些鍵值對又代表了什么呢,我們打開這個網(wǎng)頁的源碼來一探究竟。

          從這段可以看出v_index是表示查找途徑的它有TITLE,AUTHOR,SUBJECT,CLASSNO,ISBN,CALLNO六種值

          FLD_DAT_BEG和FLD_DAT_END分別是開始和結(jié)束年份

          v_value表示用戶在搜索框中輸入的內(nèi)容

          v_paggnum表示每頁顯示的書目條數(shù),有10 15 20三種

          v_seldatabases是檢索庫 有0 1 2三種值v_LogicSrch是檢索方式 有0 1兩種值


          上一頁 1 2 3 下一頁

          關(guān)鍵詞:

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();