You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
An android assignment project with Jetpack Compose, Coroutines, ViewModel, LiveData, Retrofit, Hilt and based on MVVM by using FourSquare Place API and Google Maps Compose.
6
+
7
+
## βΉ Introduction
8
+
9
+
It is about a demonstration application with FourSquare Place API. You get places(venues) information from FourSquare Place API service, then shows them on Google Maps. When you click on a place(marker on map), get details about the place. It starts with Adyen location, if you want see your current location places, you can click my location button and get them.
10
+
11
+
## What You Will Need
12
+
13
+
**Hardware Requirements**
14
+
- A computer that can run Android Studio.
15
+
- An Android phone for debugging.
16
+
17
+
**Software Requirements**
18
+
- Android SDK package
19
+
- Android Studio 4.X
20
+
21
+
## π Features
22
+
23
+
- Get location permissions
24
+
- Get user current location
25
+
- Show nearby places on Google Map
26
+
- Show places information on Google Map
27
+
28
+
## π± Screenshots
29
+
30
+
<palign="center">
31
+
<imgsrc="docs/1.png"width="32%"/>
32
+
<imgsrc="docs/2.png"width="32%"/>
33
+
<imgsrc="docs/3.png"width="32%"/>
34
+
</p>
35
+
36
+
<palign="center">
37
+
<imgsrc="docs/4.png"width="32%"/>
38
+
<imgsrc="docs/5.png"width="32%"/>
39
+
<imgsrc="docs/6.png"width="32%"/>
40
+
</p>
41
+
42
+
<palign="center">
43
+
<imgsrc="docs/7.png"width="32%"/>
44
+
<imgsrc="docs/8.png"width="32%"/>
45
+
<imgsrc="docs/9.png"width="32%"/>
46
+
</p>
47
+
48
+
## π² Download
49
+
50
+
Go to the [Releases](https://github.com/isoguzay/FoursquareApiCompose/releases) to download the latest APK.
51
+
52
+
## π Tech Stack
53
+
54
+
### Architecture
55
+
56
+
- 100% Kotlin based, including Gradle files
57
+
- MVVM Clean & Single-Based Architecture
58
+
- Repository Pattern
59
+
60
+
### Libraries
61
+
62
+
- Minimum SDK level 21 + based on [Kotlin](https://kotlinlang.org/)
-[Hilt](https://dagger.dev/hilt/) - for dependency injection
67
+
68
+
- Jetpack Libraries
69
+
-[Compose](https://developer.android.com/jetpack/compose/documentation) - Build modern declarative Android UI
70
+
-[Lifecycle](https://developer.android.com/jetpack/compose/lifecycle) - Observe lifecycle state changes
71
+
-[ViewModel](https://developer.android.com/topic/libraries/architecture/viewmodel) - Store UI related data
72
+
73
+
-[Retrofit Client](https://square.github.io/retrofit/) - Execute network service calls
74
+
-[Splash API](https://developer.android.com/guide/topics/ui/splash-screen) - Customize your Splash without effort
75
+
-[Timber](https://github.com/JakeWharton/timber) - Log your messages
76
+
77
+
### Services
78
+
79
+
-[FourSquare API Service](https://developer.foursquare.com/docs/places-api-getting-started) - FourSquare API πΊπ
80
+
-[Google Maps Compose](https://developers.google.com/maps/documentation/android-sdk/maps-compose) - Google Maps with Jetpack Compose π
81
+
82
+
## π How to get the Foursquare API key?
83
+
84
+
Register [here](https://developer.foursquare.com/docs/manage-api-keys) and get your own Foursquare API key for your builds. You should add your API key to local.gradle.
85
+
86
+
## π How to get the Google MAPS API key?
87
+
88
+
Register [here](https://developers.google.com/maps/documentation/android-sdk/maps-compose) and get your own Google Maps API key for your builds. You should add your API key to as a meta-data under the AndroidManifest.xml file.
89
+
90
+
91
+
92
+
# π³ Cash Register
93
+
94
+
95
+
96
+
# Adyen Android Assignment - Requirements
2
97
3
98
This repository contains the coding challenge for candidates applying for a Senior Android role at Adyen.
4
99
It consists of two unrelated parts:
@@ -25,5 +120,4 @@ You are free to add any feature or code you want, but we also value quality over
25
120
26
121
### Setup
27
122
Add your Foursquare client ID and secret to `local.gradle`. See `local.gradle.example` for details.
28
-
Tip: You can verify your credentials with `src/test/java/com/adyen/android/assignment/PlacesUnitTest.kt`# FoursquareApiCompose
29
-
# FoursquareApiCompose
123
+
Tip: You can verify your credentials with `src/test/java/com/adyen/android/assignment/PlacesUnitTest.kt`# FoursquareApiCompose
0 commit comments