# EasySports **Repository Path**: deviche/EasySports ## Basic Information - **Project Name**: EasySports - **Description**: 一款资讯类应用~~~o(* ̄▽ ̄*)ブ,MVP+Retrofit+Rxjava - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2018-11-14 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README [toc] # EasySports ## 声明 本项目部分API来自NBA中文官网与虎扑体育,纯练手之作,个人未从中获取任何利益,其所有内容均可在NBA中文官网与虎扑体育获取。 数据的获取与共享可能会侵犯到NBA中文官网与虎扑体育的权益,若被告知需停止共享与使用,本人会立即删除整个项目。 ## 简介 项目采用 MaterialDesign + MVP + Retrofit2 + RxJava开发 大部分功能已经完成,如果对你有帮助的话不妨star一个o(* ̄▽ ̄*)ブ 下面我就来总结一下吧哈哈哈哈 ## 下载地址 现在已经在酷安网上架啦 召唤术:[传送门!!](https://www.coolapk.com/apk/173213) ## 应用部分截图 ## 一些收获 移动端和后端一把抓,学习了很多 - 尽可能简洁干净的编码规范 - 自认为良好的业务分包与功能解耦,清晰的网络请求 - 对三方服务和框架的二次封装 - 符合Material Design的界面,良好的动画过度 ### 封装 对方法的使用或者第三方服务或是框架的使用都用到了封装 这里只说其中几点(也包括一下自定义View) - 一个基于MVP的快速开发基类库`rbase` - Activity和Fragment的常用封装,结合RxJava - 异常收集类的封装并提供对外的服务器上传处理接口 - 工具类的封装:`PermissionManager` 、`SPManager`等 - 网络请求的统一管理 - 好用的弹窗库的封装`dialoglib` - 网页浏览的封装`RWebActivity`,其内部集成了腾讯开源框架[VasSonic](https://github.com/Tencent/VasSonic) - 对ZXing库的二次封装和自定义实现 - `ProgressLayout` 常用的加载、错误布局 - `TitleItemDecoration` 好用的粘性头部 ### 第三方服务 - [ShareSDK](http://www.mob.com/downloadDetail/ShareSDK/android) - [阿里热修复](https://www.aliyun.com/product/hotfix?spm=5176.8142029.388261.353.152a1d0fzhdgPS) - [腾讯直播](https://cloud.tencent.com/product/LVB) ps:本来也引入了Bmob构建用户系统和异常反馈系统,在引入自己搭建的后台接口以后就废弃掉了,bmob还是有点坑爹的。 ### 框架 感谢这些开源框架的大力支持 - [BRAVH](https://github.com/CymChad/BaseRecyclerViewAdapterHelper) : 功能强大的RecyclerViewAdapter封装库 - [glide](https://github.com/bumptech/glide) : 图片加载 - [GreenDAO](https://github.com/square/retrofit) : 数据库框架 - [Retrofit](https://github.com/square/retrofit) : 代码简洁,接口解耦 - [OkHttp](https://github.com/square/okhttp) : 网络请求 - [RxJava](https://github.com/ReactiveX/RxJava) : 快捷的线程切换,简洁的代码,清晰的逻辑,和Retrofit配合很爽 - [photoView](https://github.com/chrisbanes/PhotoView) : 图片的操作 - [eventbus](https://github.com/greenrobot/EventBus) :时间总线,组件之间的简便通信 - [gson](https://github.com/google/gson) : JSON序列化 - [VasSonic](https://github.com/Tencent/VasSonic) : Tecent开源,提升web的首屏请求速度 - [stetho](https://github.com/facebook/stetho) : Facebook开源的非常好用调试框架 - [BottomNavigation](https://github.com/Ashok-Varma/BottomNavigation) : 底部导航栏 - [JieCaoPlayer](https://github.com/lipangit/JiaoZiVideoPlayer) : 播放器,引入到项目中,并在其基础上自定义功能 ### 接口 应用的数据分为两部分,自己搭建和数据抓取([我的博客的抓取教程](http://rayhahah.com/2017/08/30/fiddler/)) - 自己搭建的SSM后台系统[传送门](https://github.com/Rayhahah/Raymall),并且已经发布在阿里云服务器上啦,干活满满的哟(要脸(✿◡‿◡)) - 直播接入 - 版本更新 - 用户管理系统 - 崩溃信息采集 - 用户信息反馈 - 剩下的接口是从虎扑体育、腾讯视频中爬取的,相当零散,相当繁杂,具体可以看`JsonParser.java`,里面有一些十分刁钻的Json数据的处理 ## TODO - 极光推送前端和后端的集成 - 视频播放器的替换 - 插件化 ## 最后 [个人博客](http://rayhahah.com/) [本项目的后台](https://github.com/Rayhahah/Raymall)