Skip to content

This project is uploaded as a demo to showcase various components and patterns

License

Notifications You must be signed in to change notification settings

riteshakya037/Android-Scrapper

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

API Codacy Badge Open Source Love Open Source Love Code Climate Issue Count

Android Scrapper App

Basically this is a android scrapper with a server-like sevice running in a seperate process as a Service 24/7, which rescrapes in a repeating pattern accoring to the time set. Easily the most complex app that I build and uses most of the Android Components in one way or another.

Getting Started

Below I have given a list of everything that was used to build this project.

Built using Libraries

  • Joda-Time Android - Replacement for the Java date and time classes.
  • JSOUP - Java library for parsing with real-world HTML.
  • GSON - Java library that can be used to convert Java Objects into their JSON representation.
  • Stetho - Sophisticated debug bridge for Android applications.
  • Apache Commons IO - Library contains utility classes, stream implementations, file filters, file comparators, endian transformation classes, and much more.
  • Butter Knife - View Injection Library
  • EventBus - Publish/Subscribe event bus optimized for Android.
  • MultiProcessPreference - Allow use of shared preferences between a different processes of same app.
  • Crashlytics - Crash reporting solution.

Design Patterns

  • Architecture Patterns - Model-View-Presenter
  • Creational design patterns - Builder, Singleton, Abstract, Factory Method, Object Pool
  • Structural design patterns - Adapter, Private Class Data, Facade, Bridge
  • Behavioral design patterns - Chain of responsibility, Null Object, Observer, Mediator

Android Components

  • Service, IInterface(AIDL), Notification, IBinder
  • AlarmManager, PendingIntent
  • BroadcastReceiver
  • MultiProcesses (android:process)
  • SQLiteOpenHelper
  • PackageManager
  • FileProvider
  • Views - RecyclerView, DrawerLayout, NavigationView, CardView, Toolbar, Spinner, TextInputLayout, CoordinatorLayout, ViewPager, ScrollView

Custom Views

  • SquareFrameLayout - View that maintains a constant 1:1 ratio
  • NonScrollableViewPager - ViewPager that has option to make it non-scrollable.

Screenshots

License

This project is licensed under the MIT License - see the LICENSE.md file for details

Disclaimer

This project is uploaded as a demo to showcase various components and patterns and is in no way intended as a tutorial.

Acknowledgments

  • Hat tip to anyone who's code was used
  • Inspiration
  • etc

forthebadge

About

This project is uploaded as a demo to showcase various components and patterns

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages