胡劍鋒
摘要:該文主要實現了一個基于Android Studio平臺的圖書閱讀器。該系統上是以Android為終端,實現電子圖書的閱讀。人們可以利用手機端APP來拓寬閱讀渠道,獲得豐富的信息。該APP操作簡單易用,界面良好。該系統主要包括Android客戶端、服務端以及后臺管理三大功能結構模塊。
關鍵詞:Android 電子圖書;APP;閱讀器
中圖分類號:TP311? ? ? ? 文獻標識碼:A? ? ? ? 文章編號:1009-3044(2018)36-0077-02
1 概述
隨著生活水平的不斷提高以及我國“大數據,物聯網+”事業的不斷發展,手機智能化的普及,人們的智能化生活得到了諸多便利,與人們生活嘻嘻相關的各類APP應用應運而生,正如大家所說的那樣“手機在手,應有盡有”。 目前紙質圖書閱讀不方便,需隨身攜帶書籍,而電子圖書只需使用必備的手機即可實現隨時隨地地閱讀,滿足人們對于閱讀的需求,拓寬人們閱讀渠道,也給人們的生活到來了便利性。
基于以上考量,本文介紹了一款基于Android的圖書閱讀器的設計與開發,采用Java和Android Studio開發環境,Tomcat搭建服務器,后臺數據庫采用MySQL作為數據庫開發環境。
2 系統需求分析
本系統APP有三類角色:游客、注冊用戶和管理員。游客主要能進行電子書瀏覽和搜索,注冊用戶不僅能進行電子書閱讀和搜索,還能下載電子書;管理員進行后臺管理,主要有圖書內容的上傳、管理,對用戶的審核管理。系統客戶端采用Android Studio作為開發環境,服務器端使用MySQL管理數據庫、Eclipse作為開發環境以及Tomcat來搭建服務器。
本系統APP的總體功能結構圖如圖1所示,主要有用戶模塊、電子書閱讀模塊和后臺管理三大模塊。
2.1 用戶模塊
本模塊主要功能包括:新用戶注冊,已注冊用戶登錄,注銷賬戶,我的書架以及找回密碼功能。
2.2 電子書閱讀模塊
本模塊主要功能包括:在線電子書閱讀,本地電子書閱讀,搜索電子書,下載電子書。
2.3 后臺管理模塊
本模塊主要功能包括:管理員的登錄、注冊,對用戶進行審核管理,對電子書進行管理。
3 系統實現
本系統主要分為客戶端和服務器端功能的設計與實現,客戶端采用MVC框架實現,主要包括:1、模型層:該層主要是業務邏輯的處理、數據庫的讀寫操作、網絡訪問等操作;2、視圖層:在Android中該層采用資源文件layout中的XML布局文件來進行界面布局描述;3、控制層:在Android中該層主要通過Activity實現。
3.1 客戶端功能設計與實現
3.1.1 本系統APP文件組織結構
1) App文件
Manifest:Android studio 配置文件
2) Java文件,主要是Activity文件
a.Mainactivity:實現首界面,精選界面,分類界面,用戶界面的布局,利用fragment;
b.HeadFragment:包含對圖書信息的介紹,以及對圖書的離線下載和在線觀看;
c.GoodFragment:該類實現對各種圖書的分類,以及界面的設計;
d.MorebooksFragment:實現對分類圖書的介紹,和向右滑動功能的實現;
e.MyFragment:包括用戶登錄注冊功能,用戶書架的實現,以及護眼模式功能。
3) res主要包含:drawable,layout,mipmap,values文件夾
Drawable包含各個頁面所需要的圖片,layout主要實現各個頁面的布局方式;
Values文件夾:主要實現界面所需要的顏色,字符串的設置。
3.1.2 用戶模塊
1) 用戶登錄注冊
登錄注冊功能,當用戶若已存在,那就直接輸入用戶名、密碼和驗證碼后即可登錄,登錄成功,再次進入界面,會對用戶名密碼利用Android系統自帶的SharedPreferences進行保存處理,只需輸入驗證碼即可登錄,若賬戶不存在,點擊注冊按鈕進行注冊,注冊界面可以添加頭像,頭像添加有兩種方式,一是:“選擇本地照片”,二是:“拍照”。用戶輸入用戶電子郵件,用戶名,密碼確認密碼后進行注冊,保存到數據庫。
2) 修改信息
用戶可以在登錄成功后修改個人相關信息,修改后的個人信息以json數據上傳服務器進行保存。個人密碼的修改可以通過輸入舊密碼,再輸入新密碼的方式來更改,也可以通過給注冊手機號發送驗證碼,輸入驗證碼,再輸入新密碼的方式來更改。
3) 找回密碼
用戶如果忘記密碼,可以使用注冊的手機號找回密碼。具體實現方式是通過給注冊手機號發送驗證碼,輸入驗證碼,再輸入新密碼的方式來找回密碼。
4) 我的書架
用戶登錄成功,并進行電子書在線觀看,可以將該電子書添加到我的書架,以便以后能夠方便地閱讀該電子書。
3.1.3 電子書閱讀模塊
1) 在線電子書閱讀
該模塊同時向注冊用戶和游客開放,進入該APP首頁面即可選擇不同類型的圖書,查詢數據庫,獲取圖書信息,以及封面頭像,用戶可以清晰地看到,圖書信息,點擊免費閱讀按鈕,即可進入閱讀界面,進行圖書閱讀。
用戶也可在該APP首頁面上直接選擇推薦的電子書進行閱讀。
在閱讀過程中,一旦用戶離開閱讀界面,系統將自動生成書簽,即用戶再次閱讀該電子書時,自動跳轉到上次閱讀結束的地方開始閱讀。
2) 本地電子書閱讀
用戶可以將已經下載到本地的電子書導入到該APP,并且添加至我的書架,這樣即可在我的書架中查看,點擊閱讀圖書文檔,即可進行本地電子書的閱讀。
目前僅支持本地TXT文檔的電子書閱讀。
3) 電子書搜索
用戶可以直接在首頁電子書搜索欄里輸入需要搜索的電子書關鍵詞,可以是電子書名稱、作者或者主角,系統后臺會依據關鍵詞來進行模糊匹配,并將搜索結果以json數據格式返回給客戶端,客戶端進行相應解析后以列表形式展現。用戶也可以進入電子書分類頁面,對電子書進行分類檢索,以便更快地找到合適的電子書。
4) 電子書下載
本APP還提供電子書下載功能,方便用戶在無網絡的情況下能夠進行電子書閱讀。下載的電子書以txt文件格式存放在本地手機。
3.2 服務器端功能設計與實現
3.2.1 管理員管理
由于電子書涉及的分類相對較多,可以設置電子書分類管理員,以便更好地管理電子書資源。分類管理員賬戶由超級管理員添加生成,分類管理員賬戶只負責該分類電子書的審核上架。
3.2.2 電子書管理
統計電子書的點擊率和閱讀量,從而形成電子書閱讀排行榜,并將熱度前十的電子書在首頁上進行推薦閱讀。當然也會按照分類形成分類排行榜,在各個分類頁面進行推薦閱讀。
3.2.3 用戶管理
統計用戶在線次數和時長,并依據該用戶在線時閱讀電子書的類型,形成用戶喜好,并對該用戶進行相應書籍推薦。對長期不在線,不進行書籍閱讀的用戶,依據以往閱讀喜好,向其推送推薦書籍,進行喚醒處理。
4 結束語
本文實現了一個基于Android Studio平臺的圖書閱讀器系統,本系統實現了電子書閱讀的所有基本功能,包括用戶的注冊與登錄,電子書在線閱讀,本地電子書導入及閱讀,書架管理等功能,系統具有很好的可擴展性。隨著對電子書閱讀需求的不斷擴展,本APP還可以對閱讀亮度進行調節,形成白天與黑夜效果。也可以在閱讀時添加背景音樂播放,形成一個良好的閱讀環境。
該系統不足之處在于沒有涉及電子書的多種格式,對于電子書市場格式多樣化的局面未進行充分考慮,在后期的設計開發中,應加強對多種電子書格式的兼容性,并且應根據讀者在正常閱讀紙質書籍的行為習慣,盡量提高用戶體驗,保持與閱讀紙質書體驗一致。下一步工作就是要結合實際情況改善不足,完善系統功能。
參考文獻:
[1] 郭霖.第一行代碼Android[M].北京:人民郵電出版社,2016.
[2] 李曉康,王成田,張德青. Android平臺下“易書”APP的設計與實現[J]. 視角,2018(5):45-46.
[3] 海英.基于Android平臺的電子圖書閱讀軟甲的設計與實現[D].北京:北京工業大學,2015.
[通聯編輯:唐一東]