Android app to manage apps that target Marshmallow. Displays a list of app packages and allows to navigate to the App Info screen for each of them. This is a simple app that I made simply because I needed it.
The project follows a Clean Architecture design. Entities lie at the innermost level containing enterprise business rules. Interactors follow containing application business rules. The next level contains adapters like presenters or repositories. The last layer contains frameworks including the Android UI, SharedPreferences etc. Inner layers do not depend on outer layers and they only reference interfaces which the outer layers can implement.
The app uses Android Data Binding. The architecture of the app is based on the MVPVM pattern. The Presenter retrieves models from the Business Logic Layer and formats them into a ViewModel which just serves for the View to bind to it.
Dagger 2 is used for dependency injection and Rx-Java is used for reactive functional programming.
The app is available for download in Google Play.
Copyright 2016 Ivan Soriano
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.