/BtrShop-android

BtrShop mobile app for Android.

Primary LanguageJavaApache License 2.0Apache-2.0

Build Status

BtrShop-android

Android application for the project Recommendation in situ de produits en magasins submitted by Université Lille 1 in collaboration with the Inria and the team Spirals.

Authors

  • Nicolas Delperdange
  • Denis Hamann
  • Charlie Quetstroey

Purpose

The purpose of the application is to retrieve a recommendation of different products scanned.

We will explain you step by step how the application works.

Screenshots

The main activity is a list of recommended product. If the list is empty, it displays an empty list. The user have to swipe to refresh the list.

Main activity

If the user click on the button with the scanner, there is an screen with a scanner to allow the user to scan.

Scanner

When the user have scanned his product, the application shows two kind of view.

The loading

Loading

The error with a message

Error

When the loading is finished, the application display the products and send the differents beacons on the server.

Product

Product

Architecture

This project use the MVP CLEAN ARCHITECTURE (BLUEPRINTS) :

Diagram

  • MVP: Model View Presenter pattern from the base sample.
  • Domain: Holds all business logic. The domain layer starts with classes named use cases or interactors used by the application presenters. These use cases represent all the possible actions a developer can perform from the presentation layer.
  • Repository: Repository pattern from the base sample.

Tests

Tests are written with Espresso.