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

基于Android平臺的豆瓣網客戶端的設計與實現

2015-01-13 03:13:08宜昌市第七中學陳羽修
電子世界 2015年21期
關鍵詞:界面用戶功能

宜昌市第七中學 陳羽修

基于Android平臺的豆瓣網客戶端的設計與實現

宜昌市第七中學 陳羽修

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

Android;豆瓣網;Java;智能手機

1  引言

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

2  應用開發環境介紹

Android開發環境搭建包括JDK、Eclipse、Android SDK、ADT的安裝以及AVD的創建,具體安裝內容如下:

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

集成開發環境Eclipse安裝;

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

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

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

3  豆瓣網客戶端的設計思路與步驟

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

3.1 認證及訪問資源的流程

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

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

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

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

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

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

3.2 客戶端功能規劃設計

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

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

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

3.3 數據存儲設計

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

4  豆瓣網客戶端的實現

4.1 首次登陸界面設計

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

private void showAlertDialog() {

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

create();

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

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

OnClickListener();

}

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

圖1  首次登陸圖

4.2 獲取未授權的請求令牌并請求用戶授權的實現

主要實現了豆瓣網客戶端的授權過程的兩個步驟:

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

步驟二:請求用戶授權。

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

4.3 授權令牌換取訪問令牌的實現

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

//保存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 “我說”功能和友鄰廣播功能實現

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

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 豆瓣網開放API的調用

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

5  結論

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

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

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

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

[4]韓超.Android系統移植開發概述[M].電子工業出版社,2011.

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

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

[7]楊豐盛.android應用開發揭秘[M].機械工業出版社,2010.

[8]郭本俊.移動軟件開發技術[M].中國水利水電出版社,2010.

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

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

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

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

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

猜你喜歡
界面用戶功能
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
國企黨委前置研究的“四個界面”
當代陜西(2020年13期)2020-08-24 08:22:02
基于FANUC PICTURE的虛擬軸坐標顯示界面開發方法研究
關于非首都功能疏解的幾點思考
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
人機交互界面發展趨勢研究
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
手機界面中圖形符號的發展趨向
新聞傳播(2015年11期)2015-07-18 11:15:04
如何獲取一億海外用戶
創業家(2015年5期)2015-02-27 07:53:25
主站蜘蛛池模板: 国内精品九九久久久精品| 欧美日韩综合网| 欧美激情网址| 九色免费视频| 国产精品女人呻吟在线观看| 另类专区亚洲| 久青草免费在线视频| 久久久久久久97| 亚洲视频在线青青| 成人免费黄色小视频| 全色黄大色大片免费久久老太| 国产精品久久久久婷婷五月| 中文字幕欧美日韩高清| 欧美精品v欧洲精品| 日本人又色又爽的视频| 欧美日韩国产成人高清视频| 美女无遮挡被啪啪到高潮免费| 国产免费久久精品99re丫丫一| 精品人妻系列无码专区久久| 亚洲第一区精品日韩在线播放| 国产精彩视频在线观看| 亚洲成人播放| 国产一区二区三区夜色| 国产性精品| 久视频免费精品6| 成人小视频网| 日韩欧美综合在线制服| 国产成人AV男人的天堂| 欧美自慰一级看片免费| 日本三区视频| 波多野结衣在线一区二区| 成人无码一区二区三区视频在线观看| 亚洲欧美日本国产综合在线 | 日韩欧美高清视频| 国产91丝袜在线播放动漫 | 欧美成人A视频| 亚洲女同欧美在线| 欧美国产日韩另类| 久久亚洲综合伊人| 国产欧美日韩va另类在线播放| 国产精品丝袜在线| 久久99精品久久久久久不卡| Aⅴ无码专区在线观看| 精品一区国产精品| 91麻豆国产视频| 日韩欧美在线观看| 欧美日韩动态图| 亚洲高清无在码在线无弹窗| 精品無碼一區在線觀看 | 免费一级全黄少妇性色生活片| 91福利免费视频| 亚洲av无码成人专区| 免费高清毛片| 中文字幕资源站| 日本精品αv中文字幕| 国产婬乱a一级毛片多女| 日韩在线视频网站| 国产在线观看人成激情视频| 欧美第二区| 国产女人综合久久精品视| 污污网站在线观看| 欧美A级V片在线观看| 成人福利在线视频免费观看| 午夜激情婷婷| av免费在线观看美女叉开腿| 久久99精品久久久大学生| 伦伦影院精品一区| 亚洲精品动漫| 国产精品入口麻豆| av在线无码浏览| 国产精品视频观看裸模| 亚洲欧洲一区二区三区| 蜜桃视频一区二区三区| 久久免费观看视频| 大香伊人久久| 91丝袜乱伦| 成人一区在线| 国产第二十一页| 午夜欧美理论2019理论| 午夜小视频在线| 国产一区二区三区在线精品专区| 亚洲第一中文字幕|