亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Android平臺的豆瓣網(wǎng)客戶端的設計與實現(xiàn)

        2015-01-13 03:13:08宜昌市第七中學陳羽修
        電子世界 2015年21期
        關鍵詞:令牌客戶端出版社

        宜昌市第七中學 陳羽修

        基于Android平臺的豆瓣網(wǎng)客戶端的設計與實現(xiàn)

        宜昌市第七中學 陳羽修

        豆瓣網(wǎng)是一個以生活文化為內(nèi)容的社區(qū)網(wǎng)站,提供圖書與影音作品信息及其他多種功能的服務。隨著Android智能手機的普及,加上Android操作系統(tǒng)強大的功能和開放性的特點,本文基于Android平臺及豆瓣網(wǎng),使用java語言設計并實現(xiàn)了豆瓣網(wǎng)手機客戶端,經(jīng)測試,該客戶端在Android手機上能正確有效的運行,具有一定的實用性。

        Android;豆瓣網(wǎng);Java;智能手機

        1  引言

        Android是一種專為智能手機設計的操作系統(tǒng)平臺,除了操作系統(tǒng)以外,還包括中間件、手機應用軟件、及Android SDK應用開發(fā)組件,供開發(fā)人員開發(fā)Android平臺的應用程序。目前Android限定所有的應用程序用java語言來編寫。本文利用JDK、 Android SDK和eclipse相結(jié)合的開發(fā)環(huán)境實現(xiàn)了豆瓣網(wǎng)的手機客戶端,功能包括:首次登陸界面、豆瓣網(wǎng)客戶端授權、我說功能和友鄰廣播功能。

        2  應用開發(fā)環(huán)境介紹

        Android開發(fā)環(huán)境搭建包括JDK、Eclipse、Android SDK、ADT的安裝以及AVD的創(chuàng)建,具體安裝內(nèi)容如下:

        Java應用程序開發(fā)環(huán)境JDK(Java Development Kit)安裝,安裝完成之后,檢查JDK是否安裝成功;

        集成開發(fā)環(huán)境Eclipse安裝;

        軟件開發(fā)工具包Android SDK(Software Development Kit)安裝,檢查SDK是否安裝成功;

        集成開發(fā)環(huán)境插件ADT(Android Development Tools Plugin for the Eclipse IDE)安裝;

        虛擬設備AVD(Android Virtual Devices),為使Android應用程序可以在模擬器上運行,必須創(chuàng)建AVD,創(chuàng)建AVD完畢后,檢查測試環(huán)境是否搭建成功。

        3  豆瓣網(wǎng)客戶端的設計思路與步驟

        設計主要完成用戶第一次登錄界面,授權界面(用戶未登錄),用戶登錄界面,顯示“我說”界面,編輯框中輸入“我說”內(nèi)容,發(fā)送“我說”內(nèi)容。

        3.1 認證及訪問資源的流程

        豆瓣網(wǎng)API通過以下四個步驟完成認證授權,并訪問或修改受限資源的流程。

        步驟一:通過申請的apikey和他的私鑰來獲取未授權的請求令牌。

        通過http://www.douban.com/service/auth/ request-token,獲取未授權的令牌。

        步驟二:獲取請求令牌后請求用戶授權這個請求令牌。獲取請求令牌之后,需要請求用戶授權該請求令牌request token需要將瀏覽器跳轉(zhuǎn)到如下網(wǎng)站:http:// www.douban.com/service/oauth/authorize跳轉(zhuǎn)后,用戶會看到請求授權的頁面用戶可以選擇同意或拒絕授權。

        步驟三:如果用戶授權了這個請求令牌,那么就用授權后的請求令牌換取訪問令牌用戶完成授權后第三方應用可以通過訪問如下網(wǎng)址,將已授權的request token換取access token access token將被用于修改和訪問第三方應用已完成授權http://www.douban.com/service/ auth/access-token。

        步驟四:使用訪問令牌訪問或修改受保護的資源。獲得accesstoken后,用戶的應用就可以使用accesstoken訪問或修改資源。

        3.2 客戶端功能規(guī)劃設計

        步驟一:用戶第一次登錄時程序會彈出一個對話框提示用戶。

        步驟二:進入認證授權界面。

        步驟三:顯示用戶登錄界面,提示輸入用戶名和密碼,用戶登錄后顯示API授權界面,單機確定完成授權,完成授權后進入顯示所有廣播界面,在編輯框里輸入“我說”的內(nèi)容,手機發(fā)送“我說”的內(nèi)容發(fā)送到服務器,并在手機屏幕上顯示出來。

        3.3 數(shù)據(jù)存儲設計

        需要存儲的主要有以下幾個數(shù)據(jù):請求令牌值、請求令牌對應的密鑰、授權令牌值、授權令牌對應的密鑰、用戶的id,這些數(shù)據(jù)直接存儲在Android提供的類SharePreference中。

        4  豆瓣網(wǎng)客戶端的實現(xiàn)

        4.1 首次登陸界面設計

        類Activitymain的實現(xiàn),Activitymain繼承了Activity類,在Activitymain中實現(xiàn)用戶首次登陸界面,如果用戶登陸的話,會直接跳轉(zhuǎn)到顯示說說,部分實現(xiàn)代碼如下:

        private void showAlertDialog() {

        final AlertDialog alert = new AlertDialog.Builder(this).

        create();

        alert.setMessage(“這是您是第一次登陸,只需要進行簡單的配置,您就可以正常使用啦:)”);

        alert.setButton(“登陸”, new DialogInterface.

        OnClickListener();

        }

        Acesstokenisvalid()函數(shù)判斷Acesstoken是否合法,如果用戶第一次登錄那么返回的false,表示acesstoken不合法。Showalertdialog()顯示用戶第一次登錄的提示框,程序跳轉(zhuǎn)到activityauth中。首次登陸如圖1所示:

        圖1  首次登陸圖

        4.2 獲取未授權的請求令牌并請求用戶授權的實現(xiàn)

        主要實現(xiàn)了豆瓣網(wǎng)客戶端的授權過程的兩個步驟:

        步驟一:獲取未授權的請求令牌;

        步驟二:請求用戶授權。

        在getrequest()函數(shù)里主要得到未授權的請求令牌和對應的請求令牌密鑰并存儲到類SharePreference里。

        4.3 授權令牌換取訪問令牌的實現(xiàn)

        Activityauthsuccess的實現(xiàn),當用戶在豆瓣網(wǎng)的授權界面單擊同意按鈕后Activiy跳轉(zhuǎn)到Activitysuccess,在這個Activity里主要完成豆瓣網(wǎng)授權的第三個步驟:使用授權后的令牌換取訪問令牌并保存用戶ID,部分實現(xiàn)代碼如下:

        //保存token

        private String saveAccessToken() {

        myService = new DoubanService("subApplication",

        DoubanUtil.apiKey, DoubanUtil.secret, true);

        String url = myService.getAuthorizationUrl(DoubanUtil. callback);

        settings = getSharedPreferences(PreferencesUtil. preferencesDouban, 0);

        String requestToken = settings.getString(PreferencesUtil .oauthToken,"false");

        String requestTokenSecret = settings.getString(Preferen cesUtil.oauthTokenSecret,

        "false");

        Log.i("jinyan", "requestToken=" + requestToken);

        myService.setRequestToken(requestToken);

        myService.setRequestTokenSecret(requestTokenSecret);

        ArrayList<String> list = myService.getAccessToken();

        String acessToken = list.get(0);

        String acessTokenSecret = list.get(1);

        Log.i("jinyan", "acessToken=" + acessToken);

        Log.i("jinyan", "acessTokenSecret=" + acessTokenSecret);

        settings.edit().putString(PreferencesUtil.acessToken, acessToken).putString(PreferencesUtil.acessTokenSecret, acessTokenSecret).commit();

        return url;

        }

        在saveaccesstoken()里我們得到了訪問令牌和與之對應的密鑰,并將其保存在SharePreference里,登陸界面如圖2所示。

        圖2  登陸界面

        4.4 “我說”功能和友鄰廣播功能實現(xiàn)

        Activityshowsaying的實現(xiàn),為應用中最核心的功能,實現(xiàn)豆瓣網(wǎng)中的“我說”功能和友鄰廣播功能,實現(xiàn)部分代碼如下:

        public View getView(int position, View convertView, ViewGroup parent) {

        SayingView sayingView;

        Saying saying = sayingList.get(position);

        if (convertView == null) {

        sayingView = new SayingView(mContext, saying);

        } else {

        sayingView = (SayingView) convertView;

        sayingView.setNickname(saying.nickname);

        sayingView.setContent(saying.content);

        }

        return sayingView;

        }

        圖3  顯示“說說”

        4.5 豆瓣網(wǎng)開放API的調(diào)用

        主要完成Abstractactivity的實現(xiàn),Abstractactivity是一個抽象的Activity,其中Activityauthsuccess和Activityshowsaying繼承了這個Abstractactivity。在Abstractactivity實現(xiàn)后,通過獲得一個授權后的豆瓣網(wǎng)服務,可以直接使用java豆瓣網(wǎng)庫的API來調(diào)用豆瓣網(wǎng)開放出來的API。

        5  結(jié)論

        本文基于Android開發(fā)環(huán)境,結(jié)合豆瓣網(wǎng)的API,采用Java語言編程,設計并實現(xiàn)了一個Android手機的應用軟件豆瓣網(wǎng)客戶端。經(jīng)在手機上運行測試,該客戶端操作方便,運行結(jié)果正確,軟件性能好,連接速度快,具有一定的實用價值。

        [1]Retour Meier.Android高級編程[M].北京:清華大學出版社,2010.

        [2]郭宏志.Android應用開發(fā)詳解[M].電子工業(yè)出版社,2010.

        [3]楊豐盛.Android應用開發(fā)揭秘[M].機械工業(yè)出版社,2010.

        [4]韓超.Android系統(tǒng)移植開發(fā)概述[M].電子工業(yè)出版社,2011.

        [5]張利國,代聞,龔海平.Android移動開發(fā)案例詳解[M].人民郵電出版社,2010.

        [6]楊文志.google android程序設計指南[M].電子工業(yè)出版社,2009.

        [7]楊豐盛.a(chǎn)ndroid應用開發(fā)揭秘[M].機械工業(yè)出版社,2010.

        [8]郭本?。苿榆浖_發(fā)技術[M].中國水利水電出版社,2010.

        [9]李鐘尉,周小彤,陳丹丹.Java從入門到精通[M].清華大學出版社,2010.

        [10]閆迎利.Java編程[M].清華大學出版社,2010.

        [11]劉培文.Java程序設計教程[M].中國人民大學出版社,2009.

        [12]Y.Daniel Liang.Introduction to Java Programming[M].機械工業(yè)出版社,2008.

        陳羽修(1998-),湖北宜昌人,現(xiàn)就讀于宜昌市第七中學。

        猜你喜歡
        令牌客戶端出版社
        內(nèi)卷
        科教新報(2024年4期)2024-03-17 09:48:21
        稱金塊
        我等待……
        讀者(2021年5期)2021-02-05 02:52:39
        基于路由和QoS令牌桶的集中式限速網(wǎng)關
        動態(tài)令牌分配的TCSN多級令牌桶流量監(jiān)管算法
        計算機工程(2018年8期)2018-08-17 00:26:54
        縣級臺在突發(fā)事件報道中如何應用手機客戶端
        傳媒評論(2018年4期)2018-06-27 08:20:24
        孵化垂直頻道:新聞客戶端新策略
        傳媒評論(2018年4期)2018-06-27 08:20:16
        基于Vanconnect的智能家居瘦客戶端的設計與實現(xiàn)
        電子測試(2018年10期)2018-06-26 05:53:34
        今日華人出版社有限公司
        石油工業(yè)出版社
        全國新書目(2014年7期)2014-09-19 20:45:40
        三年片大全在线观看免费观看大全| 高清亚洲成av人片乱码色午夜| 精品久久中文字幕一区 | 亚洲精品中文有码字幕| 少妇被按摩出高潮了一区二区| 久久国产免费观看精品3| 国产精品亚洲综合一区在线观看| av草草久久久久久久久久久| 亚洲天码一区二区三区| 国产极品女主播国产区| 一个人在线观看免费视频www| 美女裸体无遮挡免费视频国产| 强迫人妻hd中文字幕| 亚洲精品无码永久在线观看 | 久久88综合| 久久夜色精品亚洲天堂| 亚洲天堂一区av在线| 丰满熟妇乱子伦| 国产亚洲第一精品| 国产一级黄色片一区二区| 中文字幕在线观看| 日本免费人成视频播放| 中文亚洲成a人片在线观看| 最新在线观看免费的a站国产| 99久久婷婷国产综合精品青草免费| 国产成人无码aⅴ片在线观看| 国产在线精品亚洲视频在线 | 男女边吃奶边做边爱视频| 米奇亚洲国产精品思久久| 国产人妻熟女呻吟在线观看| 国产精品无码一本二本三本色| 无码电影在线观看一区二区三区| 国产三级一区二区三区在线观看| 精品亚洲成a人在线观看| 装睡被陌生人摸出水好爽| 亚洲人成在线播放a偷伦| 精品粉嫩av一区二区三区| 亚洲老妈激情一区二区三区| 欧美精品一区二区精品久久| av免费在线播放观看| 欧美人与禽zozzo性伦交|