E-commerce app for Android platform
- Android Studio 2024.1 - LadyBug.
- JDK- 11.
- Gradle 8.9.
- Dispositivo con Android - API 34.
-
Clona este repositorio:
git clone https://github.com/javigp2002/ECommerceAndroidApp
-
Abre el proyecto en Android Studio.
-
Accede al build gradle y sincroniza el proyecto.
-
Crea un archivo
secrets.propertiesen la raíz del proyecto y añade las siguientes variables:MAPS_API_KEY=<VALOR_API_KEY_GOOGLE> -
Ejecuta el proyecto en tu dispositivo o emulador.
- Kotlin
- Retrofit2
- Coroutines
- SharedPreferences
- Google Api Maps And Play Services
- GSON
├── app
│ ├── src
│ │ ├── main
│ │ │ ├── java
│ │ │ │ ├── com.example.ecommerce
│ │ │ │ │ ├── adapters
│ │ │ │ │ ├── api
│ │ │ │ │ ├── dependency
│ │ │ │ │ ├── domain.repository
│ │ │ │ │ ├── presentation
│ │ │ │ │ ├── ui.theme
│ │ │ │ │ ├── utils
│ │ │ ├── res
│ │ │ │ ├── drawable
│ │ │ │ ├── layout
│ │ │ │ ├── values
│ │ │ │ ├── xml
El código está organizado a través de la separación de capas y clean architecture de manera que se pueda mantener y escalar el proyecto de manera sencilla.
Asimismo, la capa de presentación está determinada por las distinas activities y fragments que se encargan de mostrar la información al usuario, la mayoría están asociadas con su ViewModel tal y como Google plantea que se realize.
Estas se emplean a través del cliente de retrofit y en la capa de 'Datasource'. Dividimos en dos:
- ProductApi:
GET /api/products/all: Obtiene todos los productos.POST /api/products/add: Añadir un producto. ADMINPOST /api/products/delete/{id}: Elimina un producto. ADMINPUT /api/products/edit/{id}: Actualiza un producto. ADMINPOST /api/cart/buy: Realizar la compra.POST /api/cart/add: Añadir un producto al carrito.GET /api/cart/deleteAll: Limpiar carrito.POST /api/cart/delete: Eliminar un producto del carrito.
- UserApi:
POST /api/user/login: Iniciar sesión.
- Rafael Delgado García-Valdecasas
- Javier González Peregrín