做爲一名菜雞Android,時常瞻仰大佬們的開源項目是很是必要的。這裏我爲你們收集整理了10個優秀的開源項目,方便咱們平常開發中學習!java
做者:ListenToCode 博客:www.jianshu.com/p/9742ce36b…git
GitHub地址 github.com/SilenceDut/…github
一款 Android 開源天氣 App ,包含天氣信息、詳情、生活指數等,通知欄,桌面小部件,定時更新天氣等等,應用沒有任何廣告,支持縣級、區級城市的天氣,原文:www.diycode.cc/projects/Si…web
總體框架 根據實際項目淺談Android項目中的框架搭建面試
關於 知天氣——天氣盡在掌握之中緩存
特色 支持縣級、區級天氣 JobScheduler與JobService的使用 輪詢系統定時更新天氣 實現不少定製化很大的,對後臺任務嚴苛的系統中(如魅族系統)通知欄常駐,而且輪詢系統正常運行,不少下載量千萬級的天氣應用沒法達到此效果 無廣告和強制保活拉活的行爲服務器
GitHub地址 github.com/FolioReader…網絡
一個 Android 開源電子書(ePub)閱讀 App ,
原文:
效果圖
Gradle
Add following dependency to your app build.gradle
compile 'com.folioreader:folioreader:0.2.3'
複製代碼
GitHub地址 github.com/SilenceDut/…
一個 Android 開源 NBA 資訊和賽事信息的平臺 App
效果圖
特色
遵循Android開發最佳實踐的一種具體實踐
Retrofit2.0+RxJava+EventBus+GreenDao的使用
代碼結構清晰,擴展性強,易複用到其餘項目
結合NBAPlus Server 學習後臺開發知識和接口的設計
動態Blur效果。
關於
NBA資訊和賽事信息的平臺。 全面、方便、快捷的獲取新聞動態、比賽數據。 無廣告、推送信息,不後臺常駐,空間佔用小。web後臺部分在這:
NBAPlus Server
GitHub地址 github.com/DaxiaK/MyDi…
動漫《你的名字》同款 Android 開源 App,原文:
效果圖
GitHub地址 github.com/wingjay/jia…
一款優雅的中國風記錄 app,包括 Android 端和 Server 端,原文:www.diycode.cc/projects/wi…
相關博客
如何在一天以內完成一款具有cool屬性的Android產品_簡書
GitHub地址 (github.com/forezp/bany…
一個基於豆瓣 API 仿網易雲音樂的開源項目。原文:www.diycode.cc/projects/fo…
項目介紹:
總體採用material design 風格,本人是網易雲音樂的粉絲,因此界面模仿了網頁雲音樂,另外,項目中儘可能使用了5.0以後的新控件。
項目總體採用mvp+rxjava+retrofit 框架,使用glide進行圖片展現,用butterknif註解,另外使用了java 8 新特性,拉姆達表達式,安卓原生並不支持,須要導插件,具體見項目。
並對retrofit的okhttpClient進行了緩存配置,很遺憾,豆瓣API在服務端並無對返回數據進行Cache-Control 設置。
後續會採用本地數據庫對數據進行緩存,初步定爲使用realm。
主界面採用material design 設計風格,使用了NavigationView和DrawerLayout的抽屜效果,CoordinatorLayout和viewpager 配合,使用behavior屬性,對toolbar的顯示和隱藏進行了控制。使用了tablayout和viewpager配合,切換fragment,總體風格相似於網易雲音樂。
用到的豆瓣API有熱映榜、top250、搜索圖書、搜索音樂,等。
GitHub地址 github.com/begeekmyfri…
帶美顏濾鏡的 Android 直播推流開源客戶端項目,經過手機攝像頭和麥克風採樣,編碼爲H.264和AAC,再封裝FLV格式,推送至RTMP服務器。延遲達到毫秒級別。
GitHub地址 github.com/Coding/Codi…
編譯環境 Android Studio 2.2.3,用gradle引用的許多第三方庫,第一次加載會有點慢,加載完畢後要build一下,這些待下劃線的類(好比 MainActivity_)會在build以後自動生成。
包說明
common 基類和工具類
comment 評論區
enter 輸入框
network 對網絡作了一點封裝
photopick 圖片多選控件
umeng 封裝了umeng
hide 進入staging界面
maopao 冒泡界面
message 消息界面
model 一些數據結構
project 個人項目界面
setting 設置界面
task 個人任務界面
third 一些第三方代碼
user 好友界面
GitHub地址 github.com/googlecreat…
原文https://www.diycode.cc/projects/googlecreativelab/Sprayscape Sprayscape內置於Unity,支持原生Android。使用適用於Unity的Google VR SDK處理陀螺儀數據和使用NatCam Unity插件進行精確的相機控制,Sprayscape將相機輸入映射到360度球體上。 GPU使一切成爲可能。在用戶點擊或觸摸時,相機進給以每秒60幀的紋理渲染。而後,經過GPU上的片斷着色器將該紋理與任何現有紋理合成。一樣的着色器還處理從2D相機到360球體的投影,建立您在app中看到的景觀。 當用戶保存景觀時,平面全景圖像存儲在應用數據中並寫入包含全部景觀的單個圖集文件。地圖集被加載到景觀中,帶有陀螺儀導航的景觀畫廊。 共享由原生Android代碼處理。當用戶經過連接共享景觀時,用戶將使用Google OAuth登陸並提示您在雲端硬盤上進行讀寫訪問。全部用戶生成的內容都存儲在用戶的雲端硬盤賬戶中,所以用戶能夠隨時刪除其內容。有了適當的權限,Drive API v3會檢查Sprayscape文件夾,若是缺乏,則建立一個,而後上傳文件。共享URL在「本機共享」對話框中呈現給用戶,而且還附加到應用程序上的scape對象,以便往後輕鬆共享。 Facebook的份額也是本地處理的。全景圖被準備爲具備適當EXIF數據的圖像對象,以確保在Facebook上正確呈現,而後經過原生共享呈現給用戶。用戶選擇Facebook分享到他們的網絡。
GitHub地址 github.com/hefuyicoder…
一款優雅的遵循 Material Design 的開源音樂播放器,UI參考 騰訊輕聽 音樂播放器,使用 Lastfm Api 與 酷狗歌詞Api。項目架構採用 mvp-clean,基於 Retrofit2 + Dagger2 + Rxjava + RxBus + Glide。
項目特色
遵循 Material Design 規範,界面清新,交互優雅。
基於 MVP-CLEAN + Retrofit2 + Dagger2 + Rxjava + Glide
功能模塊: 個人歌曲、個人歌單、文件夾、我喜歡、最近播放、最近添加、播放排行、本地搜索等。
支持顯示歌詞及緩存
支持耳機線控播放,耳機拔出自動暫停
動態刷新媒體庫,及時獲知媒體文件變動
日夜間模式切換,支持動態換膚
在這裏得到的不只僅是技術!