zoukankan      html  css  js  c++  java
  • 【Android】又一个Gank客户端来啦

    本篇文章已授权微信公众号 dasu_Android(大苏)独家发布

    介绍

    Gank平台的移动端又来了,非常感谢Gank平台开放接口,让我们这些小白有机会练手、学习。

    本项目在架构方面有稍微花点心思,虽然还是最简单的MVC模式,但基本参考MVP的思想,Activity只负责ui显示逻辑,ui和业务会尽量的分离开,每个包的类权限严格控制,尽量对外部隐藏其实现细节。另外,本项目不像其他热门的Gank客户端那样使用诸如Rx系列的高级开源库,代码应该是可以很容易看懂的,吧。哈哈,有兴趣的可以fork看看,有什么问题可以联系我哈。

    以下是项目所依赖的第三方库:

    • Retrofit + Okhttp (网络访问)
    • Gson (Json数据解析)
    • Glide (图片加载)
    • photoview (支持手势缩放的图片查看)
    • Jsoup (Html解析)

    项目

    Github地址

    下图是项目的代码结构图,我分成mode层和ui层,让ui与业务逻辑尽可能解耦,感兴趣的clone项目看看哈,架构方面才刚接触,很多地方考虑不周到,欢迎指点一下哈。过段时间,我会单独写篇博客来介绍整个项目的架构设计以及各模块的职责和交互方式,让感兴趣的童鞋可以更容易理解项目代码。

    如果有clone项目的童鞋,出现了编译失败的问题,可以参考下本项目的开发环境哈:


    - Android Studio: 2.2.3 - Gradle Version: 2.14.1 - Android Plugin Version: 2.2.3 (根目录build.gradle里gradle的版本) - compileSdkVersion: 25 - buildToolsVersion: "25.0.2"

    以上设置在两个build.gradle里都可以找到。

    如果把代码下载到本地编译报错的话,有可能是因为gradle的版本不一致,也有可能是因为Android SDK的版本问题,如果有报错的童鞋试着在这几个地方查查看哈。

    效果

    效果只展示了部分效果,感兴趣的可以去我Github看看更详细的,或者是下载下来试试看哈。

      
      

    App下载

    Fir

    鸣谢

    drakeet

    CaMnter

    burgessjp


    QQ图片20180316094923.jpg
    最近刚开通了公众号,想激励自己坚持写作下去,初期主要分享原创的Android或Android-Tv方面的小知识,感兴趣的可以点一波关注,谢谢支持~~

  • 相关阅读:
    SpringBoot2.x前后端分离跨域问题及Swagger不能访问
    SpirngBoot2.x整合Swagger2接口文档
    SpringBoot2.x整合Druid数据源
    SpringBoot2.x整合logback 实现自动打印日志
    docker 进入 mysql中的操作
    Intellij Springboot (子模块)访问jsp页面404
    运行rabbitmq 的docker
    mybatis拦截器修改sql重新set后不生效?
    oracle+mybatis如何在新增时返回主键(自增序列)的值?
    oracle+mybatis报“未找到要求的from关键字”错误?
  • 原文地址:https://www.cnblogs.com/dasusu/p/6931192.html
Copyright © 2011-2022 走看看