##a common Architecture for Android Applications developing based on MVP,integrates many Open Source Projects( like Dagger2,Rxjava,Retrofit... ),to make your developing quicker and easier.
##Usage
New Project
If you are building a new project, directly to the entire project clone (or download), as Demo as the main module, then the package name into their own package name , Demo contains the package structure can be used directly, a mainstream
MVP
+Dagger2
+Retrofit
+Rxjava
framework so easy to build successful, and now you refer Demo Mvp Package under the UserActivity format,Use Template to automatically generate MVP, Dagger2 related classes under the corresponding package,With access to [Wiki documents] (https://github.com/JessYanCoding/MVPArms/wiki) slowly grasp the framework to see more articles as soon as possible in the project to use it, in practice, learning is the fastest
Old Project
##Wiki Detailed usage reference Wiki
##Notice
-
The use of these technologies for the latter part of the project maintenance and iterative, especially large projects is very helpful, but is to develop a pre-write a page to write a lot of
MVP
,Dagger2
class and interface, which is indeed a headache for the development of pre- Now the framework has been able to mvp_generator_solution automatically generate someMVP
,Dagger2
template code, and now we can very easily use the framework. -
First run app, the cold start will be a long time, this is not because of this framework, because the
Instant run
in Debug mode will start the first deployment of some resources, if the signature to play Release package is not There will be a cold start is very slow, so do not worry about affecting the user experience. -
If you rename WEApplication, the following error occurs in the startup app:
Unable to instantiate application com.android.tools.fd.runtime.BootstrapApplication
, please close the instant run. -
AppComponent is a management of all single-instance object class, the use of dagger2 management, DaggerAppComponent for Dagger2 automatically generated using apt if missing, the first part of the error comment out, and then compile the project, DaggerAppComponent automatically generated, this time to open the Notes on Can, the specific use of dagger2 please refer to the document.
-
Use this frame comes with automatic adaptation function, please refer to AndroidAutoLayout.
-
This framework uses
RxPermissions
for rights management (adaptation android6.0), and provides a PermissionUtil tool class line of code to implement the permission request. -
This framework does not provide any third-party libraries associated with the UI(except for the
AndroidAutoLayout
screen adaptation scheme).
##Functionality & Libraries
Mvp
Google's officialMvp
architecture project, which contains several different schema branches (this is the Dagger branch).Dagger2
Rxjava
RxAndroid
Rxlifecycle
Rxbinding
RxCache
Retrofit
Okhttp
Autolayout
Gson
Butterknife
Androideventbus
Timber
Glide
LeakCanary
RxErroHandler
##Update
- Thursday, 15 December 2016: AppManager
##TODO
- Improve RxErrorHandler
- Improve RequestIntercept
##Acknowledgements Thanks to all the three libraries used in this framework Author, and all for the 'Open Sourece' selfless contributions Developer and Organizations, so that we can better work and study, I will also spare time return to the open source community
##About Me
- Email: jess.yan.effort@gmail.com
##License
Copyright 2016, jessyan
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.