Más

Flutter, Google Wallet y Back4App: Tutorial de aplicación de recompensas ambientales

15min

Introducción

En este tutorial, crearemos una aplicación Flutter que anima a los usuarios a tomar acciones ambientales, recompensándolos con insignias digitales y entradas para eventos almacenadas en Google Wallet. Integraremos Back4app como el backend para gestionar los datos de los usuarios y rastrear las contribuciones ambientales. Cada vez que un usuario completa una tarea, recibe una insignia coleccionable o una entrada para un evento, que puede añadirse a su Google Wallet para su resguardo.

Características

  • Los usuarios pueden registrar tareas ambientales (por ejemplo, reciclaje, voluntariado).
  • Los usuarios ganan insignias digitales y pases para eventos según sus contribuciones.
  • Google Wallet almacena y muestra estos activos digitales.
  • Integración de backend con Back4app para el seguimiento y la gestión de datos.

Requisitos previos

  1. Entorno de desarrollo de Flutter: Sigue la guía de instalación de Flutter.
  2. Cuenta de Back4app: Regístrate en Back4app.
  3. Acceso a la API de Google Wallet: Configura tu proyecto siguiendo la documentación de la API de Google Wallet.
  4. Claves de API de Google Wallet: Genera y utiliza las claves de API necesarias para acceder a Google Wallet.

Paso 1: Configuración de Back4app como Backend

1.1 Crear un Proyecto en Back4app

  1. Inicia sesión en Back4app y crea un nuevo proyecto.
  2. Crea una Clase Parse llamada EnvironmentalActions con los siguientes campos:
    • nombreDeUsuario (String): El nombre de usuario del usuario.
    • tipoDeAcción (String): Tipo de acción ambiental (por ejemplo, Reciclaje, Plantación de árboles).
    • marcaDeTiempo (DateTime): La fecha en que el usuario completó la acción.
    • recompensaEmitida (Boolean): Si se ha emitido una recompensa por la acción.

1.2 Agregar Datos de Ejemplo a Back4app

Puedes agregar algunos registros de ejemplo para fines de prueba, pero la aplicación manejará la entrada de datos más tarde cuando los usuarios completen tareas.

Paso 2: Inicializar el SDK de Parse en Flutter

2.1 Crear un Nuevo Proyecto de Flutter

Abre tu terminal y crea un nuevo proyecto de Flutter:

Bash


2.2 Agregar Dependencias

Abre el pubspec.yaml archivo y agrega las dependencias requeridas:

YAML


Ejecuta flutter pub get para instalar los paquetes.

2.3 Inicializar el SDK de Parse en el Archivo Principal

En lib/main.dart, inicializa el SDK de Parse agregando tus credenciales de Back4app:

Dart

Dart


Reemplace YOUR_BACK4APP_APP_ID y YOUR_BACK4APP_CLIENT_KEY con sus credenciales reales de Back4app.

Paso 3: Construir la interfaz de usuario para registrar acciones ambientales

Crearemos una interfaz de usuario básica que permita a los usuarios registrar sus acciones ambientales y ver sus recompensas digitales.

3.1 Crear el Widget EnvironmentalRewardsScreen

Crea un nuevo widget en lib/environmental_rewards_screen.dart:

Dart


Esta interfaz de usuario permite al usuario:

  • Ingresar su nombre de usuario.
  • Seleccionar una acción ambiental.
  • Registrar la acción, lo que activa el backend y emite una recompensa utilizando la API de Google Wallet.

Paso 4: Integrar Google Wallet para Emitir Recompensas

4.1 Configurar la API de Google Wallet

Sigue la documentación de la API de Google Wallet para configurar la API y obtener tus claves de API.

4.2 Emitir una Insignia Digital con Google Wallet

En el _issueReward() método, implementarás la lógica para crear una insignia digital (pase genérico) y guardarla en la Google Wallet del usuario. Aquí hay una estructura básica:

Dart


Paso 5: Ejecutar la Aplicación

  1. Ejecuta la aplicación usando flutter run para comenzar a registrar acciones y recibir recompensas.
  2. Cuando un usuario registra una acción, se guardará en Back4app, y se emitirá una insignia utilizando la API de Google Wallet.

Conclusión

Este tutorial mostró cómo construir una aplicación de recompensas ambientales usando Flutter, Google Wallet, y Back4app. Los usuarios registran acciones ambientales, y al completarlas, reciben insignias digitales o pases de eventos almacenados en su Google Wallet. Este proyecto podría ampliarse con funciones de compartir en redes sociales, tablas de clasificación, o incluso recompensas basadas en ubicación usando códigos QR.

Para más información, consulta: