neone35 / geowords

Allows to associate user input with markers on the map

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Geowords

Overview

Allows to associate user input with markers on the map. Saves search history to repeat query and set/edit marker with long press on the map.

Why this project

This is a technical task provided by "MR Digital Group" (GPSWOX) for Junior Android Developer position. The exact requirements were as follows:

  1. Create 1st screen (activity) with appbar which contains input box and displays earlier search history in dropdown.
    • Dropdown item must contain word, partOfSpeech & time of search;
    • Click on the dropdown item invokes new call to API and opens second (detail) activity;
  2. Create 2nd screen to display search details separated into two halfs of the screen:
    • top half contains WebView with Word API search output;
    • bottom half contains GoogleMap. Long press on the map places marker.
    • appbar must contain option to switch between default and one of the 5 custom icons (random) imported from material.io.
    • press on the marker opens custom InfoWindow which contains definition and partOfSpeech of the current word.
  3. Additional (bonus) requirements:
    • search history persistence between app restarts.
    • material design guidelines.
    • layouts for tablets and/or landscape orientation.
    • MVVM/MVP or any other architecture.
    • clear project structure.

Screenshots

Geowords user interface

What Did I Learn / Use?

Including permissions, location & binding

  • AndroidX
  • Parceler