Reading
簡介
很久不見,重新拾起部落格吧,今天分享一個開源APP-Reading,專案的初衷是因為自己平時翻文章,但是公眾號又經常忘記看,自己索性搞一個APP吧,順便練一下Kotlin。藉助著WanAndroid OpenApi搞起,同時裡面加了一些小工具,具體功能向下看吧,然後也嘗試了一下以前想實現但是沒實現過的功能,廢話不多說,先來一波圖。各位如果有什麼意見可以在Issues上提,或者聯絡我。
Reading: Reading是一款基於WanAndroid OpenApi開發的閱讀類工具,如果你是一個熱衷於Android開發者,那麼這款軟體能幫助你閱讀精品Android文章。同時Reading中還包含”英文單詞”、”賬號本子”、”天氣”、”查單詞”、”快遞查詢”等小工具。專案基於”Kotlin+MVP”架構開發,風格大概也許屬於Material Desgin原質化風格,包含主題顏色切換、百變Logo、等功能。在此感謝WanAndroid的OpenApi,以及其它開源專案的貢獻。
ScreenShot
DownLoad
Function Tips
1.首頁
- WanAndroid API實現Android文章列表、熱門搜尋文章、專案列表
- 重新整理、置頂、分享文章、搜尋文章、搜尋歷史
- 收藏列表
2.工作臺
- 快遞查詢 使用快遞100免費API進行快遞查詢
- 掃一掃 快速掃一掃、從相簿選擇掃一掃
- 查詢單詞 使用有道SDK查詢單詞 加入單詞本
- 單詞本 單詞本記錄功能 標記重點
- 賬號本子 新建賬號 儲存本地 記錄你的常用賬號密碼
- 每日推薦 標記重點的單詞推薦在首頁
3.我的
- 登入註冊 使用WanAndroid Api進行賬號註冊登入
- TODO List WanAndroid API 待辦事項 (待開發)
- 設定 個性換膚、賬號鎖功能、本地資料備份、百變Logo、清除快取
Skill Tips
-
專案架構 使用MVP架構模式搭建,封裝MvpActivity、MvpFragment、BasePresenter、BaseView。P層繫結V層生命週期 。具體可見MVP包
-
網路層 使用Retrofit+RxJava進行網路請求,封裝公共Rerofit的HttpClientUtils(建立RetrofitBuilder、OkHttpClient、addHeader、攔截器、Cookie、https等)、工廠模式建立不同BaseUrl的網路物件。具體可見http包
-
快取 使用GreenDao資料庫快取本地資料,並提供資料備份、還原功能。同時結合MVP架構,將資料庫操作作為Dao層,Dao層封裝Protocol,利用工廠模式包裝GreenDao產生的xxxBeanDao
-
RecycleAdapter 封裝RecycleView Adapter 配合SwipeRefreshLayout支援下拉重新整理、上拉載入功能,不滿足一屏資料
-
RxBusTools 封裝RxBusTools事件分發 封裝BaseActivity、BaseFragment統一處理註冊監聽事件
-
StatuBarUtils沉浸式 使用寫程式碼的猴子的StatusBarUtil 狀態列工具類(實現沉浸式狀態列/變色狀態列)適配沉浸式通知欄
-
主題切換 B站開源框架MagicaSakura
-
百變Logo Android群英傳中利用根據主題顏色動態切換Icon,部分機型可能會出現crash,目前還沒找到更好的解決方案,所以提供了開啟關閉的開關。如果有大神可以在Issues提供。
-
本地資料備份還原 通過讀取資料庫資料寫入txt檔案,讀取txt檔案資料還原實現,記錄備份還原的時間戳作為版本號
-
單詞翻譯 使用有道SDK翻譯單詞
-
FloatActionButton 實現首頁懸浮按鈕 點選展開
-
HorizontalScrollView+ViewPager 首頁仿網易雲音樂滑動
-
BottomSheet 主題切換底部彈出框
-
手勢解鎖 參考Github-ihsg/PatternLocker
Version
V1.0.1
-
完善資料備份還原清空資料功能
-
完善賬號鎖功能
-
新增版本號
V1.0.0
- 首次提交 部分功能不完善
License
Copyright (C) 2018 Hankkin
Licensed under the Apache License, Version 2.0 (the “License”);
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an “AS IS” BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.