This is a repo for implementing Map pan or drag (up, down, right ,left) to load more places on the Google Map for Android

Overview

Challenge

  1. Display restaurants around the user’s current location on a map ○ Use the FourSquare Search API to query for restaurants: https://developer.foursquare.com/docs/api/venues/search
  2. Load more restaurants when the user pans the map. 2.1 Cache results in-memory (no need to persist the cache). 2.2 Read restaurants from the cache to show results early, but only if the restaurants fit within the user’s current viewport.
  3. Include a simple restaurant detail page.

before run

  1. Get Client ID and Secret fro FourSquare and update AppConst file 2- Get your Google Map key and Update google_maps.xml file

How to run the project

  1. Download the project
  2. Import the project to Android Studio Tool
  3. Run the project
  4. Check the Emulator or your real device

How to run the unit and instrumentation tests

  1. Make sure your emulator is up running (for instrumentation test only)

  2. OPen the terminal from Android Studio 3- type the following command in terminal

    ./gradlew test connectedAndroidTest

Run Ktlint

  1. to check the formatting. Run the following command in terminal ./gradlew ktlintCheck

  2. to format the code. Run the following command in terminal ./gradlew ktlintFormat

Run Lint

  1. open terminal and run ./gradlew lint
  2. check issues like accessibility and find lint-results file under build/reports

The App Architecture

  1. Clean Architecture based on the MVVM Architecture pattern with Interactors

Libs

  1. Hilt for dependency Injection
  2. RxJava for Handling Threading , powerful operators and Reactive Programming
  3. Architecture Components like ViewModel and LiveData
  4. Junit for Assertions
  5. Mockito for mocking objects
You might also like...
Demo de uso de google maps en Android, charla para el GDG Chimbote

mapasbasico Demo de uso de google maps en Android, charla para el GDG Chimbote Puedes usar este proyecto como base para trabajar con mapas en Android.

An android app that uses Google Maps API and SDK to track a user's location and calculate the total distance travelled
An android app that uses Google Maps API and SDK to track a user's location and calculate the total distance travelled

Bike Rush is an android app that uses Google Maps API and SDK to track a user's location and calculate the total distance travelled by him or her along with time and average speed.

Google Maps Api test using marker rotation and routes.
Google Maps Api test using marker rotation and routes.

Google Maps Api test using marker rotation and routes. Features ✔️ Kotlin ✔️ DI: Hilt ✔️ Retrofit ✔️ Gson ✔️ View binding ✔️ Coroutines ✔️ AndroidX ✔️

EasyRoutes allows you to easily draw routes through the google maps address api.
EasyRoutes allows you to easily draw routes through the google maps address api.

EasyRoutes EasyRoutes allows you to easily draw routes through the google maps address api. Note: You need to generate an API key from the google cons

Membuat Custom Tooltip Marker Google Maps
Membuat Custom Tooltip Marker Google Maps

Custom-Tooltip-Marker Membuat Custom Tooltip Marker Google Maps Tutorial Build with Android Studio https://youtu.be/E8ND0YThNiU Tutorial Build with St

An app to search nearby businesses on Google Maps & Add Grocery Items to List!
An app to search nearby businesses on Google Maps & Add Grocery Items to List!

GoStore: Internship Program Project A mobile app is built where the user can search for his nearby locations based on his requirement. Whenever the us

Maps application in Android Studio using the Maps SDK for android

Google-Maps-Application Maps application in Android Studio using the Maps SDK for android. This app was initially developed in Java, but then was conv

Android library project that lets you manage the location updates to be as painless as possible

Smart Location Library Android library project that intends to simplify the usage of location providers and activity recognition with a nice fluid API

Maps SDK for Android Utility Library
Maps SDK for Android Utility Library

Maps SDK for Android Utility Library Description This open-source library contains utilities that are useful for a wide range of applications using th

Owner
Mahmoud Ramadan
Playing with Android , IOS and NodeJs
Mahmoud Ramadan
My Maps displays a list of maps, each of which show user-defined markers with a title, description, and location. The user can also create a new map. The user can save maps and load them in from previous usages of the app.

My Maps Bryant Jimenez My Maps displays a list of maps, each of which show user-defined markers with a title, description, and location. The user can

null 0 Nov 1, 2021
malik dawar 87 Sep 18, 2022
A view abstraction to provide a map user interface with various underlying map providers

AirMapView AirMapView is a view abstraction that enables interactive maps for devices with and without Google Play Services. It is built to support mu

Airbnb 1.8k Dec 4, 2022
This project allows you to calculate the route between two locations and displays it on a map.

Google-Directions-Android This project allows you to calculate the direction between two locations and display the route on a Google Map using the Goo

Joel Dean 970 Dec 15, 2022
LocationPicker 2.1 0.4 Java - A simple and easy to way to pick a location from map

Introduction LocationPicker is a simple and easy to use library that can be integrated into your project. The project is build with androidx. All libr

Shivpujan yadav 61 Sep 17, 2022
typedmap is an implementation of heterogeneous type-safe map pattern in Kotlin

Typedmap typedmap is an implementation of heterogeneous type-safe map pattern in Kotlin. It is a data structure similar to a regular map, but with two

Ryszard Wiśniewski 34 Nov 7, 2022
Slime loader is a map loader & saver for the file format Slime as specified here implemented in Minestom.

??️ SlimeLoader Slime loader is a map loader & saver for the file format Slime as specified here implemented in Minestom. Features: World loading Bloc

null 25 Oct 2, 2022
Android Maps Extensions is a library extending capabilities of Google Maps Android API v2.

Android Maps Extensions Library extending capabilities of Google Maps Android API v2. While Google Maps Android API v2 is a huge leap forward comapare

Maciej Górski 408 Dec 15, 2022
Scale bar for Android Maps (Google Maps, OSM, MapBox, Yandex)

Map Scale View Scale view for any Android Maps SDK (not only Google Maps) Contributing I encourage you to participate in this project. Feel free to op

Stas Parshin 109 Nov 18, 2022
Curve-Fit is an Android library for drawing curves on Google Maps

Curve-Fit Android library for drawing curves on Google Maps. This library uses Bezier cubic equation in order to compute all intermediate points of a

Sarweshkumar C R 63 Mar 7, 2021