SkillCollege開源項目,基本遵守MVP設計模式
簡閱
一款基于Google Material Design設計開發的Android客戶端,包括新聞簡讀,圖片瀏覽,視頻爽看 ,音樂輕聽以及二維碼掃描五個子模塊。項目采取的是MVP架構開發,由于還是摸索階段,可能不是很規范。但基本上應該是這么個套路,至少我個人認為是這樣的~恩,就是這樣的!
效果圖
Demo下載
模塊分析
新聞簡讀
-
介紹:API使用的是鳳凰新聞客戶端的接口,我只是簡單的獲取了新聞的列表和詳情數據,由于api和鳳凰新聞客戶端完全一致,鑒于侵權問題我就不開源出來了。至于接口是如何獲取的?Google,百度,調試獲取日志,我能說的只有這么多。
-
功能:列表頁使用自定義的ListView(自動加載更多)顯示新聞列表,詳情使用的是WebView加載,支持滑動返回。對于多圖新聞的處理,使用的和主流新聞客戶端類似,滑動切換多張圖片,可雙指縮放圖片大小!
圖片瀏覽
-
介紹:API使用的是百度圖片的搜索接口,由于網上有很多的開發者開源了這個接口,所以我也就放出來,如有侵權請及時告知。
-
功能:列表頁使用的瀑布流效果(增加了下拉刷新和上拉加載更多)詳情頁和列表頁的切換增加了一個圖片放大或縮小到指定位置的效果,圖片也可以雙指縮放!
視頻爽看
-
介紹:API使用的是優酷開放平臺的SDK,不過要吐槽的一點是,優酷的SDK真心不好用,還是Eclipse版本的,我是一點點移植到Android Studio平臺的,但是它的接口還是很豐富的,好好的利用一下,還是能夠做出一個優秀的APP的。
-
功能:列表頁使用了Google的CardView,簡單的獲取了一些視頻的基本數據。播放頁使用了優酷提供的視頻播放器組件,傳入視頻ID就可以播放視頻了,只要調通了SDK,其他的都是一些簡單的數據獲取!
音樂輕聽
-
介紹:API獲取的是豆瓣音樂的數據,由于也不是開放API,如有侵權請及時告知。
-
功能:播放音樂的界面是我自定義的一個唱機的View,很多思路都是從網上學習借鑒過來的,自己重新造了個輪子。UI和網易云音樂對比的話,只能說是形似神不似了,沒有人家做的細致!
二維碼掃描
-
介紹:這個完全是我自己單獨開發的類庫,之前也有開源出來,這次又再一次重構優化,后期會單獨剝離二維碼掃描模塊,做成類庫和Demo的形式,提供Android Studio版本。
-
功能:掃描界面使用xml進行布局,然后加入屬性動畫。這樣布局更具有優勢,更利于多屏幕適配。解碼模塊使用的是兩個主流的開源庫Zbar 和ZXing,進過多次測試發現,ZBar雖然掃描效率和速度高于ZXing,但是經常掃描出錯誤的信息,可能由于太靈敏的緣故把,綜合二者的優缺點還是建議使用ZXing來解碼,并且這個項目還在長期維護更新!
致謝
-
苦于沒有后臺支持,找到這些支持JSON數據格式的開放接口可謂是煞費苦心,前前后后嘗試了很多次才找到,也感謝網友們提供的接口!
-
界面的原型都是我自己構思的,后期的切圖美化主要是Chris幫忙完成的,很感謝他業余時間和我一起完成這樣一個APP!
-
項目中大量使用了Github上面優秀的開源項目,我會列舉出來!其他一些代碼片段就不一一致謝了,很感謝這些開放源碼的技術大牛們,讓我學到了很多!
-
最后如果覺得我的項目對你有所幫助,請點擊我的支付寶付款碼請我喝杯咖啡把~當然我也希望你們能夠多多fork,多多star,多多follow,這將給我更多的動力開源更多的項目!
開源項目說明
ButterKnife
-
License: Licensed under the Apache License, Version 2.0 (the "License");
AndroidTagGroup
-
License: Licensed under the Apache License, Version 2.0 (the "License");
NineOldAndroids
-
License: Licensed under the Apache License, Version 2.0 (the "License");
SystemBarTint
-
License: Licensed under the Apache License, Version 2.0 (the "License");
Android-Universal-Image-Loader
-
Link: https://github.com/nostra13/Android-Universal-Image-Loader
-
License: Licensed under the Apache License, Version 2.0 (the "License");
PhotoView
-
License: Licensed under the Apache License, Version 2.0 (the "License");
OkHttp
-
License: Licensed under the Apache License, Version 2.0 (the "License");
SmartTabLayout
-
License: Licensed under the Apache License, Version 2.0 (the "License");
SwipeBackLayout
-
License: Licensed under the Apache License, Version 2.0 (the "License");
ImageBlurring
-
License: Licensed under the Apache License, Version 2.0 (the "License");
PinterestLikeAdapterView
-
License: Licensed under the Apache License, Version 2.0 (the "License");
Material-Dialogs
EventBus
Gson
Volley
Umeng
- Link: http://www.umeng.com/
Youku
- Link: http://open.youku.com/




