美文网首页安卓Android开发知识小集
Android框架,直接改包名就可使用。

Android框架,直接改包名就可使用。

作者: 小于先森 | 来源:发表于2018-12-03 15:24 被阅读144次

    github地址:点击跳转到Github

    原因

    • 为了方便以后项目的使用
    • 项目中用的都还是比较古老的东西,mvc,volley等,搭建的过程中也学习一下新技术.

    组成

    • 采用MVP模式
    • 集成butterknife(推荐跟Butterknife Zelezny 配合使用)
    • BRAVH(点我查看具体使用方式
    • RxJAVA+Retrofit2+Glide
    • SmartRefreshLayout(点我查看使用) 个人比较喜欢用SwipeRefresh
    • Material Dialog(点我查看使用) 推荐以model方式导入
    • Gson 解析(推荐配合GsonFormat使用)
    • 屏幕适配采用Smallest Width(最小宽度)

    使用

    下载下来改个包名直接当新项目就可以啦


    这里写图片描述
    这里写图片描述
    这里写图片描述

    时间太长了 现在可能已经没有图片跟这个笑话了 应该是申请的key过期了

    详细介绍

    主要依赖

    ext{
    
        dependVersion = [
                rxJava          : "2.1.11",
                rxAndroid       : "2.0.1",
                retrofit        :  "2.4.0",
                glide           : "4.6.1",
                support_version : "27.0.2"
        ]
        supportLib=[
                v7              : "com.android.support:appcompat-v7:$dependVersion.support_version",
                design          : "com.android.support:design:$dependVersion.support_version",
                recyclerview    : "com.android.support:recyclerview-v7:$dependVersion.support_version",
                cardview        : "com.android.support:cardview-v7:$dependVersion.support_version",
                annotations     : "com.android.support:support-annotations:$dependVersion.support_version"
        ]
    
        rxJava = [
                rxJava          : "io.reactivex.rxjava2:rxjava:$dependVersion.rxJava",
                rxAndroid       : "io.reactivex.rxjava2:rxandroid:$dependVersion.rxAndroid"
        ]
        retrofit=[
                retrofit        : "com.squareup.retrofit2:retrofit:$dependVersion.retrofit",
                retrofit_gson   : "com.squareup.retrofit2:converter-gson:$dependVersion.retrofit",
                retrofit_rxjava : "com.squareup.retrofit2:adapter-rxjava2:$dependVersion.retrofit",
                retrofit_log    : "com.squareup.okhttp3:logging-interceptor:3.4.1"
        ]
        glide=[
                glide           :"com.github.bumptech.glide:glide:$dependVersion.glide",
                glide_ok        :"com.github.bumptech.glide:okhttp3-integration:$dependVersion.glide",
        ]
        glideCompiler ="com.github.bumptech.glide:compiler:$dependVersion.glide"//没什么必要  只写上不引用
    
        rxJavaLibs = rxJava.values()
        retrofitLibs = retrofit.values()
        glideLibs = glide.values()
        supportLibs = supportLib.values()
    }
    

    MVP的三大基类(位于base包下)

      - IBasePresenter 
      - IBaseView
      - BasePresenter
    

    使用方式在mvp包下。网上好多关于这方面文章 不太理解的自行google.(对于mvp 每个技术人的理解都不一样,只要能达到完美解耦就可以,不用过于追求同步)

    Util类介绍

    • DisplayUtils: 获取屏幕尺寸 dp2sp 等;
    • EncodeUtils: 编码类。utf-8的转码解码等
    • GlideUtils: 把图片加载封装起来。
    • MaterialDesignDialogUtils: 把几个比较通用的弹窗封装起来;
    • SPUtils: 顾名思义 sp存储类;
    • StatusBarUtil:状态栏的设置类;
    • ToastManager: 封装了toast跟snackBar;
    • 其他后续添加。

    尾语

    时代再进步,现在的时代已经不是一个人单干的时代了,要紧跟时代的步伐,能站在巨人的肩膀上就站在巨人的肩膀上,所以很多这个很多都是将各种最实用的第三方库搭建到一起,对于变动比较大的,推荐以model方式集成到项目中,如:material-dialogs 或者相册选择之类的。

    项目会继续更新的 伴随google的io大会新技术同步更新。

    最后再发一遍项目地址:点我直达

    相关文章

      网友评论

        本文标题:Android框架,直接改包名就可使用。

        本文链接:https://www.haomeiwen.com/subject/rzvycqtx.html