開源專案分享————掘夢

madreain發表於2017-08-02

掘夢是一款有助於Android攻城獅們鞏固基礎,進價提升的一個資訊閱讀APP,掘夢的宗旨就是把所有Android相關所有優秀的文章和框架、控制元件等第一時間向大家展示,讓大家緊跟Android開發的新方向。

專案介紹

黃金招聘季節的時候,找工作去複習android相關知識點的時候,發現東西有點零碎,當時就想自己有空做一個android知識相關的積累的app,涉及面廣一些,要涉及到android的方方面面,java的入門,android的相關面試等。想法有了,接下來就是實踐了,那麼難題來了!!!app叫什麼名字了???三個大問號,糾結許久,才起了掘夢這個名字,接下來就是android相關知識的歸納了,歸納好後,就是去尋找大神們寫的一些相關文章了,讓大神們的文章讓更多人閱讀。掘夢裡面分享的文章涉及的作者比較多,若內容有侵權請聯絡我進行刪除處理。再次感謝相關開發者在網上分享自己的技術經驗,讓我們受益匪淺。

掘夢 apk下載地址

  • 掘夢亮點:
    • Bmob第三方伺服器,支援程式碼中增刪改查,及其後臺操作
    • android複習板塊涉及:java、android基礎、專案常用框架、熱門/新技術、開源專案、面試。(android知識點基本上覆蓋,後期還會完善)
    • 自學板塊:引入的android攻城獅的第一門課,視訊學習
    • 設定有推薦功能,歡迎你推薦更好的文章讓更多人去學習提升
    • 意見反饋收集一些好的建議或意見
    • 支援內容分享,便於知識的傳遞,及其多途徑檢視

專案搭建

伺服器搭建

這裡採用的是Bmob 後端雲,自己寫小型專案/畢業設計都可以用這個,省去了繁雜的伺服器的一些繁瑣方法。

詳細寫法:參考Bmob 後端雲使用文件

設計JavaBean

收集文章進行歸納總結歸檔,根據目標功能,設計JavaBean

外掛GsonFormat快速實現JavaBean

GsonFormat安裝方法

1.Android studio File->Settings..->Plugins–>Browse repositores..搜尋GsonFormat

2.安裝外掛,重啟android studio

相關使用可以上網找一下,網上一大堆,不再囉嗦了

介面管理類

單例模式實現介面的管理,撰寫介面回撥資料及其相關失敗等回撥,對返回結果進行多種狀態返回。貼上一個版本更新管理類

/**
 * 版本更新檢查
 *
 * @author madreain
 * @desc
 * @time 2017/4/27
 */

public class ClientUpdateManager {
    private static ClientUpdateManager instance;

    private ClientUpdateManager() {
    }

    public static ClientUpdateManager getInstance() {
        if (instance == null) {
            synchronized (ClientUpdateManager.class) {
                if (instance == null) {
                    instance = new ClientUpdateManager();
                }
            }
        }
        return instance;
    }


    /**
     * 版本更新
     * @param mbValueCallBack
     */
    public void getClientUpdateConfig(final MBCallback.MBValueCallBack<UpdateVersionModel> mbValueCallBack) {
        BmobQuery<UpdateVersionModel> bmobQuery = new BmobQuery<>();
        bmobQuery.findObjects(new FindListener<UpdateVersionModel>() {
            @Override
            public void done(List<UpdateVersionModel> list, BmobException e) {
                if (e == null) {
                    UpdateVersionModel updateVersionModel = list.get(0);
                    if (updateVersionModel != null) {
                        mbValueCallBack.onSuccess(updateVersionModel);
                    }
                } else if (e.getErrorCode() == 9015) {
                    if (BuildConfig.DEBUG) Log.d("TypeManager", "e:" + e);
                } else {
                    if (BuildConfig.DEBUG) Log.d("TypeManager", "e:" + e);
                    mbValueCallBack.onError(Constants.Error);
                }
            }
        });
    }

}複製程式碼

UI顯示

資料準備好了,就是將資料展示到UI層給使用者看了,這邊引用了一些第三方及其第三方服務

  • 掘夢相關技術

    • 1.bmob伺服器

    • 2.bugly記錄bug

    • 3.友盟分享 統計

    • 4.glide圖片載入

    • 5.ormlite資料庫

    • 6.CommonPullToRefresh重新整理控制元件

    • 7.wenchao防探探卡片滑動

感謝

掘夢,相關知識點均來自與網路的大神們,非常感謝他們對android開發的經驗分享,讓我受益匪淺,感謝他們。讓自己在android的坑中越陷越深。祝願所有android攻城獅們也能在這個坑中越陷越深。

掘夢GitHub開源地址

相關文章