Android端 MVVM + Jetpack 架构组件的Github客户端。
English Document | 中文文档
- 如果编译遇到如下图的错误,请先参考下方【开始使用】,对项目进行配置:
出现这个问题的原因,最新版本的代码,需要开发者注册一个自己的
OAuth Application
,注册后,Github
的API访问次数就能达到5000次/小时(之前的版本只有60次/小时),之前很多朋友反应在Debug过程中不够用,断点打了几次就被限制请求了,因此最新版本添加了这个配置的步骤,虽然麻烦了一小步,但是对于学习效率的提升,这点配置时间可以忽略不计。
- 最新版本中我移除了
DataBinding
,缘由请参考 这里。
-
Lifecycle: Create a UI that automatically responds to lifecycle events.
-
LiveData: Build data objects that notify views when the underlying database changes.
-
Room: Access your app's SQLite database with in-app objects and compile-time checks.
-
Retrofit2: Type-safe HTTP client for Android and Java by Square, Inc.
-
OkHttp: An HTTP+HTTP/2 client for Android and Java applications.
-
RxPermissions: Android runtime permissions powered by RxJava2.
-
RxWeaver: A lightweight and flexible error handler tools for RxJava2.
-
AutoDispose: Automatic binding+disposal of RxJava 2 streams.
- 1.直接通过git命令行进行clone:
$ git clone https://github.com/qingmei2/MVVM-Rhine.git
- 2.注册你的GithubApp
首先打开这个链接,注册属于你的OAuth Application
:
注册完成后,记住下面的Client ID
和Client Secret
,并配置到你的项目根目录的local.properties
文件中:
CLIENT_ID = "xxxxxx"
CLIENT_SECRET = "xxxxxx"
大功告成,接下来点击编译并运行即可。:tada: :tada: :tada:
如何使用Android Jetpack
?
如何使用Kodein
进行依赖注入?
如何进阶学习RxJava
?
如果您依然不满意这个项目中的代码风格, 欢迎体验笔者关于状态管理的最新实践,个人而言更趋近于理想中的设计:
🎨 项目中的UI设计部分参考了 gitme.
⭐ 项目参考了 rx-mvvm-android 并对其部分代码进行了引用.
The MVVM-Rhine: Apache License
Copyright (c) 2018 qingmei2
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.