玩游戲就做一個多玩客戶端吧

Gc(game circle 游戲圈) app開發(fā)總結

聲明:Gc是本人利用閑暇時間開發(fā)的一款開源app,所有代碼開放開源,不會也不允許任何人作為商業(yè)用途。

Gc總體數(shù)據(jù)來源:首先Gc大部分數(shù)據(jù)是來自多玩論壇網(wǎng)站數(shù)據(jù),對于lol相關查詢來自http://API.xunjob.cn/提供的免費API(不知道怎么了 目前訪問不了了),段子內(nèi)容來自http://api.avatardata.cn/Joke/提供的免費API,美女圖片資源來自http://gank.io/api/提供的免費API,數(shù)據(jù)存儲服務提供由leanClound提供免費的數(shù)據(jù)存儲。

GC總體設計思想:app整體數(shù)據(jù)采用jsoup結合RxJava實現(xiàn)對多玩論壇數(shù)據(jù)對抓取,通過jsoup訪問多玩論壇網(wǎng)站,返回html樹,通過jsoup結合Rxjava解析,生成數(shù)據(jù)model,然后根據(jù)自己設定的UI顯示在客戶端,由于個人能力問題,不能解析到多玩論壇的登錄注冊流程,本人對多玩的數(shù)據(jù)只能實現(xiàn)瀏覽的功能。后來通過leancloud RestAPI數(shù)據(jù)存儲的支持,本人自定登錄注冊,帖子收藏等功能,實現(xiàn)了用戶可以在本app上進行注冊,登錄,設置用戶頭像,評論圖片的功能(其實某頭條就是這樣哈,就是把別人的網(wǎng)頁拿來給用戶看,在自己的服務器進行評論等功能。。。),首頁banner則是通過RxJava結合Retrofit發(fā)起請求訪問LOLAPI,查詢LOL數(shù)據(jù)。

GC的UI架構,UI架構是采用底部導航欄加上fragment切換實現(xiàn)。所有activity,fragment,model均繼承基礎類,實現(xiàn)了整體功能,風格上的統(tǒng)一,

Gc app本人認為你能學習到點:
1:首先是對父類的抽取,所有常有的方法,常量放在父類中,方便調(diào)用,雖然很多人都是知道的,但是仍有初入開發(fā)的小白不太了解,
2:自定義ViewGroup,個人感覺最酷炫的特效就是自己寫了一個loadingView(對,就是你看到那個一個笑臉在吃豆的加載動畫),這個loadingView只有那個笑臉是imageView,其余全是自己寫的View,放在一個ViewGroup,結合ObjectAnimation實現(xiàn)了笑臉從左至右的吃豆,自身的alpha不斷加深的動畫,(這里你可以學到自定義ViewGroup,自定義ViewGroup的onmeasure,onlayout,Animation的使用,弱引用,handler結合Runnable實現(xiàn)持續(xù)的功能)
3:自定義View(全部都在widget包下面),
(1)首先是底部導航欄,巧妙的結合animation通過一張顏色的圖片實現(xiàn)了點擊效果的切換。
(2)lableView:類似于支付寶上面的斜著的標簽,這個是我在Github上看到別人開源照著寫的一個,整體代碼都一致,只是作為個人練習,就是把別人的代碼拿來學習,消化,這個view我之前還試著寫過,效果不是很好(之前自己是通過drawRound+drawText就是在矩形上寫文字,效果很不好,測繪也很難,這個人的思路很好,寫在path上,path設置背景色,真的很有才,唯一的缺點是我忘了這個人github了不能去看)
(3)圓角圖片這個上面的方法是通過重寫imageView在onDraw之前在它的Layer上畫一個圓角,后來問學習了解了更多的方法,一種是通過drawable實現(xiàn),這是hongyang大神的博客上面的,還有一種是通過xperformMode的模式,這個網(wǎng)上還是有很多例子的。(就了解這么多了,大家可以補充)
(4)通過ItemTouchHelper實現(xiàn)了recyclerView位置變幻,這個也是看了別人的博客自己消化理解到。
(5)剩下那些view一般都是簡單的自定義View結合動畫自己寫著玩的。
(6)推薦一個很好的網(wǎng)站,這個人寫的真的超贊http://blog.csdn.net/harvic880925/article/details/38875149

最后本人在項目中練習學習到的東西:首先就是android app的整體架構,工具類的抽離,RxJava+retrofit + restAPI使用,MVP架構的練習,自定義View,自定義ViewGroup,業(yè)務的流程,recyclerView實現(xiàn)下拉刷新,上拉加載更多,一些簡單的設計模式的使用,公共組件抽離,android5.0轉場動畫的使用,android5.0新引入兼容包的使用,一些新部件的使用。。。。(應該還用了很多新的知識點,有點忘了,就不一一列舉了,大家在項目中自己看吧)

希望我這個完成了90&%的項目能給大家一定幫助。
最后附上項目地址:https://github.com/bolevw/GC.git

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,036評論 25 709
  • 遇見十八歲 二月的南寧 有朋自遠方來 不亦樂乎 不懂得太多的人生 但是懂得了緣分吧 遇上了,便都是好的 我們跨越了...
    逗霸君閱讀 486評論 5 10
  • 抱怨,如同一個強大的玻璃罩,把好的東西都抵擋在外面,壞的事情在里面滋生,終有一天自己會在這個罩子里腐爛以致消亡。所...
    關鍵期育兒錦囊閱讀 425評論 2 7
  • 江南水鄉(xiāng),甪直為最。愛人曾經(jīng)在此地工作了十多年之久,對它比較熟悉。 甪直美,美在水。甪直有古街古巷共有69條,而它...
    senny1978閱讀 188評論 4 2

友情鏈接更多精彩內(nèi)容