Arquitectura de Aplicaciones

1

Pasos para aprender Flutter Avanzado

2

¿Qué es una Arquitectura de software?

3

Tipos de Arquitecturas para Flutter

4

Arquitectura BLoC en Flutter

5

BLoC + Clean Architecture en Flutter

6

Estructurando nuestro proyecto utilizando la Arquitectura BLoC

7

Haciendo BLoC Singleton en Flutter

8

Aplicando Providers al Proyecto

Firebase y Flutter

9

Integrando Firebase Authentication, Cloud Firestore y Firebase Storage al proyecto

10

Integrando Firebase a Flutter para Android

11

Integrando Firebase a Flutter para iOS

12

Creación de Pantalla de Login con Flutter

13

Creando botones reutilizables en Flutter

14

Autenticación de Firebase con Google

15

Implementando Firebase Authentication en BLoC Pattern

16

Streams en Flutter

17

Manejando una sesión con Firebase Authentication y Flutter

18

Implementando Google SignOut en BLoC

19

Implementando Google SignOut en View

20

Monitoreando y validando la conexión al Sign con Google

21

Mostrando los datos de usuario de Google en la interfaz en Flutter

Cloud Firestore de Firebase en Flutter

22

¿Qué es Cloud Firestore de Firebase?

23

Analizando un modelo de datos no relacional

24

Creando un Modelo de datos en Cloud Firestore

25

Enviando datos a Cloud Firestore

26

Creando un Widget gradiente personalizado

27

Manejo de Desbordamiendo de Texto de Widget Text

28

Botón de Back en un Appbar en Flutter

29

Navegación entre pantallas en Flutter

30

Widget Text Appbar personalizado en Flutter

31

Widget TextField personalizado en Flutter

32

Creando una Safe Area para una interfaz que tiene un AppBar

33

Widget TextField con iconos en Flutter

34

Retocando el CardView

35

Mostrando imágenes en un CardView

36

Creando un botón de Submit en Flutter

37

Envío de datos de un fórmulario en Flutter

38

Subiendo datos a Firestore de Firebase

39

Formularios en Flutter

Acceso al Hardware con Flutter

40

Acceso a la cámara en Flutter

41

Librerías de acceso a Hardware en Flutter

Firebase Storage en Flutter

42

Qué es y cómo funciona Firebase Storage en Flutter

43

Subiendo una imagen a Firebase Storage desde Flutter

Querys avanzados en Cloud Firestore de Firebase en Flutter

44

Manejo de imágenes en Cloud Firestore

45

Cloud Firestore insertando referencias y arrays en la base de datos

46

Descargar imágenes de Firebase Storage y mostrarlas en Flutter

47

Procesando datos con BLoC Pattern

48

Trayendo datos de Cloud Firestore

49

Persistiendo datos de un usuario logueado

50

Aplicando Filtros en Cloud Firestore

51

Construyendo los Places en la pantalla de Home

52

Mostrando los Places en la pantalla de Home

53

Actualizando datos en tiempo real

54

Manejando la lógica de likes, como botón toggle.

55

Insertando y obteniendo referencias en datos de Firestore.

56

Usando el caché para cargar imágenes más rápido

57

StreamController, sink, add y StreamBuilder

Conclusiones

58

Conclusiones

Curso Avanzado de Flutter

Curso Avanzado de Flutter

Anahí Salgado Díaz de la Vega

Anahí Salgado Díaz de la Vega

Integrando Firebase a Flutter para Android

10/58
Recursos
Transcripción

En esta clase veremos como configurar Firebase para que funcione completamente con Android y no genere ningún error.

Repasemos los puntos que haremos con Android:

  • No implementar Firebase como librería en el proyecto Android. (Ya lo hicimos)
  • Para FirebaseAuth:
    • gradle.properties añadir las líneas:
      • android.useAndroidX=true
      • android.enableJetifier=true
    • compileSdkVersion 28
    • targetSdkVersion 28
  • Para CloudFirestore:
android {
        defaultConfig {
                multiDexEnabled true
        }
}

Ahora iremos a nuestro archivo pubspect.yaml y vamos a colocar las siguientes dependencias: Firebase_auth, google_sign_in, firebase_storage y cloud_firestore; las cuales puedes encontrar en el repositorio de paquetes de Dart

Aquí puedes acceder al repositorio.

Aportes 81

Preguntas 8

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.

Hola,
Si llegaron hasta aquí y tienen diferentes errores que no saben como solucionar (como yo). Pueden optar por lo siguiente: OJO QUE SERA LARGO

Nota: A mi me funcionó. Si han probado de todo y siguen con errores, quizas les ayude. El video y la App que clonaron ya tienen masomenos uno año. (Entendiendo que son versiones de Flutter y Android anteriores, pueden general conflictos).

Pueden crear un proyecto nuevo de Flutter en android y luego copiar ciertos archivos que descargaron del repositorio de Anahi al del nuevo proyecto. Lo importante es regresar al video donde reestructuran y crean carpetas (BLoC). Antes de volver a empezar deben:

  • Copiar toda la carpeta “lib”.

  • Copiar la carpeta Assets

  • Copiar la carpeta Fonts.

Hasta aquí todo bien. Ahora solo empiecen todo desde el video 6 creo. Si han configurado Firebase con el nombre del paquete del proyecto de Anahi, deben crear otro proyecto en firebase con el nuevo nombre del paquete.

continuan…

  • Agregan las depedencias que se muestran en el video a la carpeta pubspec.yaml

  • Agregan las dependencias a gradle que se muestran en el video. (El video menciona que no copiemos la dependencia de firebase_core, pero no se preocupen por eso, ya que actualmente google ya la quito. Si crearon el proyecto nuevo en firebase y colocaron google analytics deben copiar esa dependencia). El archivo “google-services.json” debe ser del nuevo proyecto.

  • Recuerden que deben reemplazar “platzi_trips_app” por el nombre que le pusieron al nuevo proyecto. Esto es cuando importamos los paquetes. "import: ‘package:… En cada archivo.dart que lo requiera’.

Al final solo tuve un error que decía “Error on signing-config.json (Access is denied)”. Ubican el archivo en su proyecto y lo borran y todo funcionó (porfin).

Yo trabaje con estas versiones:
cupertino_icons: ^0.1.2
generic_bloc_provider: ^1.0.9
firebase_auth:
google_sign_in:
firebase_storage: ^3.1.5
cloud_firestore: ^0.13.0
classpath 'com.google.gms:google-services:4.3.3

Espero les ayude.

Tardó un montón, pero ya logró compilar 😃

Para los que tienen el siguiente problema:

FAILURE: Build failed with an exception.

* Where:
Build file '<projects>\platzi-trips\android\app\build.gradle' line: 24

* What went wrong:
A problem occurred evaluating project ':app'.
> ASCII

revisé este issue en GitHub:
https://github.com/flutter/flutter/issues/38163
y este documento en google drive que también está en el mismo Issue:
https://docs.google.com/document/d/16Csy9CEjTx9Bt6vcTJY4DpLtCe2DOCKdDkogXAHu9iw/edit

Espero les sirva 😉

Lineas de codigo:

- android/gradle.properties:
android.useAndroidX=true
android.enableJetifier=true

- android/app/build.gradle > defaultConfig:
multiDexEnabled true

- Dependencias:
firebase_auth:
google_sign_in:
firebase_storage: ^2.1.0
cloud_firestore: ^0.9.13

Tengo ya revisando paso a paso todo 2 dias y me sale este error, tambien veo qu evarios tenemos este problema y no nos estan ayudando a resolver el problema, no se si seria bueno que puedan hacer nuevamente la clase o ayudarnos. necesitamos ayuda en realidad y seguimiento a todos nuestros comentarios

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:transformNativeLibsWithStripDebugSymbolForDebug'.
> tried to access method com.google.common.io.Files.fileTreeTraverser()Lcom/google/common/collect/TreeTraverser; from class com.android.utils.FileUtils

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 19s
Gradle task assembleDebug failed with exit code 1
Exited (sigterm)

Estoy arto de este curso, Platzi deberías actualizar tus cursos al menos una vez por año cambia mucho las librerías, incluso sintaxis de los lenguajes. Me quedo con ganas de aprender, mejor me voy a Udemy y me compro un curso mas reciente. bye

Hola compañeros yo les recomiendo tener Android Studio actualizado al 100% y no tendrán errores de versiones, en mi caso yo no descargue los archivos del repositorio, simplemente seguí trabajando con mi proyecto del curso anterior de Flutter, lo que hice fue crear los archivos Dart y copiar el código de cada archivo del repositorio a mi proyecto de flutter. Aquí les dejo unas fotos de como va quedando mi proyecto:

les recomiendo seguir los pasos de la página oficial https://firebase.google.com/docs/flutter/setup?platform=android#analytics-enabled

Este curso ya tiene un año y en ese tiempo hasta las implementaciones y pasos para aplicar Firebase a Android cambiaron.

Les dejo este video del canal oficial de Firebase sobre como hacer todo este proceso de manera actualizada aqui.

Tambien pueden leer directamente la documentacion oficial aca

Si a alguien le presenta problemas la app para correr, puede intentar abrir el proyecto de android desde android studio y este mismo le pedirá las dependencias faltantes para correr.

Esto funciono para mi en dic del 2021

generic_bloc_provider: ^1.1.0
firebase_core: ^1.10.5
firebase_auth: ^3.3.3
google_sign_in: ^5.2.1
firebase_storage: ^10.2.3
cloud_firestore: ^3.1.4

SI les sale un error en el gradle linea 24, el

classpath 'com.google.gms:google-services:4.3.3'

bajenlo de versión a

classpath 'com.google.gms:google-services:4.2.0
'```

Hola ya están en una versión más actual:
firebase_storage: ^3.1.6
cloud_firestore: ^0.13.7

Hola, les platico que me paso.
Al hacer la edición de los archivos gradle.properties y build.gradle, con el simple hecho de darle doble clic para editarlo, me marcaba error con la version de gradle, trate de cambiar la versión, vi varias formas de arreglarla y nada.
Lo que tuve que hacer es bajar de nuevo una copia del repositorio, reemplazarlos y cualquier modificación que requiero hacer, mejor lo abro en Sublime.

Este detalle me llevo medio día.

Aunque en este video dice que se debe omitr este paso, la única manera para conectarme fue agregando la siguiente linea en el apartado de dependencies de app/build.gradle:

implementation 'com.google.firebase:firebase-analytics:17.2.2'

Espero no traiga problemas más adelante 😃

(Febrero del 2022)
Las versiones de los paquetes que utilizé sin tener problemas fueron:

firebase_auth: ^3.3.7
 google_sign_in: ^5.2.3
 firebase_storage: ^10.2.7
 cloud_firestore: ^3.1.8

Lo que me funcionó a mi para resolver los errores fue actualizar las versiones de firebase que pusimos en pubspec.yaml de la siguiente manera:

  firebase_auth:
  google_sign_in:
  firebase_storage: ^3.1.6
  cloud_firestore: ^0.13.7

Antes de correr la app por primera vez, vayan a terminal y entren e siguiente comando para borrar los anteriores builds o archivos apk que se generaron anteriormente para asi evitar que le salgan mensajes de error:

flutter clean

Esto se hace mas que todo cuando se baja un proyecto de un repositorio o se hace un git clone.

Agreguen la libreria de firebase_core, si bien no da problema a simple vista hara que algunas cosas no funcionen al 100

ya pasaron algunos meses del curso y hay algunos packages que no funcionan ya con la version de flutter si quieren que no les pase eso busquenlos en esta pagina y la opcion de install lo copian y lo pegan en las dependencias zelda

Chicos les recomiendo que esta parte de curso la vean en youtube…

Toda la parte de conectar la app con firebase y el proceso de habilitar el login y logout ya que la arquitectura bloc se actualiza muy rápido y hay muchas cosas acá que no deben hacer. y otras que si…

Se los digo por experiencia propia. Pueden buscar “login con google flutter 2020” y encontrarán un tutorial bien actualizado, se ahorran varios dolores de cabeza

Configuraciones para firebase flutter

Si después de hacer todo esto, y apoyarse en los comentarios de los demás como lo hice yo. Les aparece un error con el generic_bloc_provider. Aquí la solución.

  • En mi caso me decía que tenia errores de dependencia y que podía ignorarlos (no sé que tan recomendable sea esto) y me daba un enlace en el que me decía que añadiera: –no-sound-null-safety en mis argumentos de arranque, esto se hace en Android Studio: Run -> Edit configurations -> Additional run args.

  • Una vez realizado eso, me marco ahora error con firebase, me decía que el sdk lo actualizará y decía que versión 19 pero le puse la 21, así que primero lo instale (versión miníma 21 y target 32).

  • Después de eso me marco pero ahora un error con kotlin y su versión. Buscando en san Stack, di con la solución. Grosso modo fue usar el classpath que ahí daban. Link de la respuesta en stack: https://stackoverflow.com/questions/70919127/your-project-requires-a-newer-version-of-the-kotlin-gradle-plugin-android-stud

Y listo. Con eso funciono y me permitió correr la app en mi emulador sin problema.

mis dependencias son:

  • generic_bloc_provider: ^1.0.9
  • firebase_auth:
  • google_sign_in:
  • firebase_storage: ^10.2.3
  • cloud_firestore: ^3.1.4

y mis classpath(incluyendo kotlin):

  • classpath ‘com.android.tools.build:gradle:4.1.0’
  • classpath “org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version”
  • classpath ‘com.google.gms:google-services:4.3.10’

Hola, si siguen el curso en 2022 instalen esta dependencia generic_bloc_provider: ^2.0.0-nullsafety.1 dado que se generan errores con generic_bloc_provider: ^1.0.9 debido a que no soporta null safety.

Llegar hasta aquí y que te corra todo el proyecto ya es todo un logro ;D

Aprendí que en VSC de esta manera se actualizan las dependencias

dart pub get

y correr el proyecto ahora con

flutter run --no-sound-null-safety

Dependencias que utilicé:
cupertino_icons: ^1.0.2
generic_bloc_provider: ^1.1.0
firebase_auth:
google_sign_in:
firebase_storage: ^10.0.1
cloud_firestore: ^2.4.0

Dependencias para Julio 2021

  firebase_storage: ^9.0.0
  cloud_firestore: ^2.3.0

Esto funciona para mi.

!Aviso Importante!
El curso esta des actualizado por lo que lo mejor es que sigan la documentacion oficial sobre como conectar una app flutter con firebase https://firebase.google.com/docs/flutter/setup?platform=android

No compilaba y luego de un rato investigando descubrí que era porque la version de Kotlin que tiene el repositorio es diferente a la que tengo yo, lo resolví cambiando la version de Kotlin en android/build.gradle

ext.kotlin_version = '1.3.50'

No hay solución que sea compatible con versiones anteriores a la 28?? esto limita a unos pocos dispositivos
😦

Es posible que algunos tengan problemas a la hora de compilar para el emulador de Android, y les salga algún problema con build.grade, se soluciona abriendo con el Android Studio el directorio android y actualizando la librería de kotlin, ademas de casi mismo pueden usar la herramienta de migración y migrar a androidx:


Al abrir el proyecto en android studio pueden decirle que habra solo la parte de android y despues decirle que lo migre a AndroidX.

Genial!

La nueva dirección de los paquetes es:

https://pub.dev/packages/

Integrando FIrebase

A que se refiere esto?

ERROR: [TAG] Failed to resolve variable '${animal.sniffer.version}'

Si ha alguien no le conecta firebase pruebe poniendo el archivo google.service.json en detro de la carpeta android nada mas

Por qué a firebase_auth y google_sign_in no se le pone número de versión?

Compañeros, a alguien le lanza este error?
No sè como corregirlo, les agradecería mucho su ayuda.

The following assertion was thrown building IconTheme(IconThemeData#2abdc(color: Color(0xdd000000))):
A GlobalKey was used multiple times inside one widget's child list.
Launching lib\main.dart on Android SDK built for x86 in debug mode...
Initializing gradle...
Resolving dependencies...
--------- beginning of main
06-09 17:07:27.583 I/GnssLocationProvider( 1879): WakeLock released by handleMessage(REPORT_SV_STATUS, 0, com.android.server.location.GnssLocationProvider$SvStatusInfo@84d44a)
Unhandled exception:
Exit code -1073740940 from: D:/android-sdk\platform-tools\adb.exe -s emulator-5554 shell -x logcat -v time -t 1
#0      _runWithLoggingSync (package:flutter_tools/src/base/process.dart:360:7)
#1      runCheckedSync (package:flutter_tools/src/base/process.dart:289:10)
#2      AndroidDevice.lastLogcatTimestamp (package:flutter_tools/src/android/android_device.dart:513:27)
#3      _AdbLogReader._start (package:flutter_tools/src/android/android_device.dart:688:41)
#4      _runGuarded (dart:async/stream_controller.dart:805:24)
#5      _BroadcastStreamController._subscribe (dart:async/broadcast_stream_controller.dart:213:7)
#6      _ControllerStream._createSubscription (dart:async/stream_controller.dart:818:19)
#7      _StreamImpl.listen (dart:async/stream_impl.dart:472:9)
#8      FlutterDevice.startEchoingDeviceLog (package:flutter_tools/src/resident_runner.dart:318:71)
#9      FlutterDevice.runHot (package:flutter_tools/src/resident_runner.dart:361:5)
<asynchronous suspension>
#10     HotRunner.run (package:flutter_tools/src/run_hot.dart:253:39)
<asynchronous suspension>
#11     AppDomain.startApp.<anonymous closure> (package:flutter_tools/src/commands/daemon.dart:389:23)
#12     AppDomain.launch.<anonymous closure> (package:flutter_tools/src/commands/daemon.dart:449:26)
<asynchronous suspension>
#13     AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:142:29)
<asynchronous suspension>
#14     _rootRun (dart:async/zone.dart:1124:13)
#15     _CustomZone.run (dart:async/zone.dart:1021:19)
#16     _runZoned (dart:async/zone.dart:1516:10)
#17     runZoned (dart:async/zone.dart:1463:12)
#18     AppContext.run (package:flutter_tools/src/base/context.dart:141:18)
<asynchronous suspension>
#19     AppInstance._runInZone (package:flutter_tools/src/commands/daemon.dart:819:20)
#20     AppDomain.launch (package:flutter_tools/src/commands/daemon.dart:447:15)
<asynchronous suspension>
#21     AppDomain.startApp (package:flutter_tools/src/commands/daemon.dart:383:12)
<asynchronous suspension>
#22     RunCommand.runCommand (package:flutter_tools/src/commands/run.dart:301:38)
<asynchronous suspension>
#23     FlutterCommand.verifyThenRunCommand (package:flutter_tools/src/runner/flutter_command.dart:559:18)
#24     _asyncThenWrapperHelper.<anonymous closure> (dart:async-patch/async_patch.dart:77:64)
#25     _rootRunUnary (dart:async/zone.dart:1132:38)
#26     _CustomZone.runUnary (dart:async/zone.dart:1029:19)
#27     _FutureListener.handleValue (dart:async/future_impl.dart:126:18)
#28     Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:639:45)
#29     Future._propagateToListeners (dart:async/future_impl.dart:668:32)
#30     Future._complete (dart:async/future_impl.dart:473:7)
#31     _SyncCompleter.complete (dart:async/future_impl.dart:51:12)
#32     _AsyncAwaitCompleter.complete (dart:async-patch/async_patch.dart:28:18)
#33     _completeOnAsyncReturn (dart:async-patch/async_patch.dart:294:13)
#34     RunCommand.usageValues (package:flutter_tools/src/commands/run.dart)
#35     _asyncThenWrapperHelper.<anonymous closure> (dart:async-patch/async_patch.dart:77:64)
#36     _rootRunUnary (dart:async/zone.dart:1132:38)
#37     _CustomZone.runUnary (dart:async/zone.dart:1029:19)
#38     _FutureListener.handleValue (dart:async/future_impl.dart:126:18)
#39     Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:639:45)
#40     Future._propagateToListeners (dart:async/future_impl.dart:668:32)
#41     Future._complete (dart:async/future_impl.dart:473:7)
#42     _SyncCompleter.complete (dart:async/future_impl.dart:51:12)
#43     _AsyncAwaitCompleter.complete.<anonymous closure> (dart:async-patch/async_patch.dart:33:20)
#44     _rootRun (dart:async/zone.dart:1124:13)
#45     _CustomZone.run (dart:async/zone.dart:1021:19)
#46     _CustomZone.bindCallback.<anonymous closure> (dart:async/zone.dart:947:23)
#47     _microtaskLoop (dart:async/schedule_microtask.dart:41:21)
#48     _startMicrotaskLoop (dart:async/schedule_microtask.dart:50:5)
#49     _runPendingImmediateCallback (dart:isolate-patch/isolate_patch.dart:115:13)
#50     _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:172:5)

Tengo el siguiente error para android, desde windows
E/flutter ( 2035): [ERROR:flutter/lib/ui/ui_dart_state.cc(157)] Unhandled Exception: PlatformException(sign_in_failed, com.google.android.gms.common.api.ApiException: 12500: , null)

como solu

Launching lib\main.dart on Android SDK built for x86 in debug mode...

registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection)
Note: D:\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-0.9.13+1\android\src\main\java\io\flutter\plugins\firebase\cloudfirestore\CloudFirestorePlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: D:\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-0.9.13+1\android\src\main\java\io\flutter\plugins\firebase\cloudfirestore\CloudFirestorePlugin.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
Note: D:\flutter\.pub-cache\hosted\pub.dartlang.org\firebase_core-0.3.4\android\src\main\java\io\flutter\plugins\firebase\core\FirebaseCorePlugin.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
Built build\app\outputs\apk\debug\app-debug.apk.
I/FA      ( 4482): This instance being marked as an uploader
W/FA      ( 4482): Table has extra columns. table, columns: events, current_session_count
W/FA      ( 4482): Table has extra columns. table, columns: apps, safelisted_events, dynamite_version
W/FA      ( 4482): Table has extra columns. table, columns: event_filters, session_scoped
W/FA      ( 4482): Table has extra columns. table, columns: property_filters, session_scoped
W/System  ( 4482): ClassLoader referenced unknown path: /system/priv-app/PrebuiltGmsCore/lib/x86
W/GooglePlayServicesUtil( 4482): Google Play services out of date.  Requires 12451000 but found 11743470
W/FA      ( 4482): Callable skipped the worker queue.

Súper trucos! Por mi cuenta y con los builds de Firebase fallando mi proyecto se detuvo 2 semanas

Ya viene en el archivo gradle.properties estas
android.useAndroidX=true
android.enableJetifier=true

Al compilarlo me sale este error 😕 no se como solucionarlos
Ayuda por favor
Running Gradle task ‘assembleDebug’…
Finished with error: Gradle task assembleDebug failed with exit code 1

Me presentaba este error al correr ERROR: [TAG] Failed to resolve variable ‘${animal.sniffer.version}’, pude resolverlo invalidando los cachés en el menú File de Android Studio. 😃

No puedo conectar con IOS
Este es el error:
Module ‘cloud_firestore’ not found
GeneratedPluginRegistrant.m

Esta configuracion apartir de que version de android funcionaria, yo en mi cel tengo la version 7, funcionaria? o como puedo hacer que sea compatible con mas veriones de android?. Saludos espero me puedan ayudar compañeros. GRacias

Hola Alguien me podria ayudar con el siguiente problema?:
`* Error running Gradle:
ProcessException: Process “C:\Users\JDrash\Documents\Estudio\Platzi\Flutter\curso-avanzado-flutter\Curso-de-Flutter-Avanzado-en-Platzi\android\gradlew.bat” exited abnormally:

FAILURE: Build failed with an exception.

  • Where:
    Build file ‘C:\Users\JDrash\Documents\Estudio\Platzi\Flutter\curso-avanzado-flutter\Curso-de-Flutter-Avanzado-en-Platzi\android\app\build.gradle’ line: 1

  • What went wrong:
    A problem occurred evaluating project ‘:app’.

Could not find method Properties() for arguments [] on project ‘:app’ of type org.gradle.api.Project.

  • Try:
    Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

  • Get more help at https://help.gradle.org

BUILD FAILED in 1s
Command: C:\Users\JDrash\Documents\Estudio\Platzi\Flutter\curso-avanzado-flutter\Curso-de-Flutter-Avanzado-en-Platzi\android\gradlew.bat app:properties

Finished with error: Please review your Gradle project setup in the android/ folder.`

esta roto este curso, usan hacks, que no sirven para ambas plataformas, que sirve solo para dispositivos mas nuevos. Quizas la autora tuvo la mejor intencion, pero ya paso como un año por lo que veo y Google sin darle soporte oficial a flutter. Eso me hace pensar si esta plataforma realmente tiene futuro o estoy desperdiciando mi tiempo al aprenderla y mejor me voy por react native, que ya esta todo digerido, no hay que andar tirando hacks entre productos de una misma empresa …

Perfecto, reinicie Android Studio y funciono para mi, gran clase

Genial gran clase, solo un detalle algunas configuracion ya no son necesarias, o al menos en mica omiti agragar estas dos lineas a mi proyecto y me funciono correctamente:

compileSdkVersion 28
targetSdkVersion 28

Leo que mucha gente tuvo problemas. Lo que yo hice fue seguir éste video de YT que me anduvo perfecto, además de que uso vscode

No se conecta a firebase y me aparece este error, creo que es un error, no estoy seguro.

2020-03-26 21:36:13.871 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21694535s,latest=-21693035s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21694535s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:36:14.000 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21694536s,latest=-21693036s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21694536s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:36:14.154 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21694536s,latest=-21693036s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21694536s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:36:15.544 3954-7849/? D/MC_BatteryStatsData: operate removing wakelock wake:com.google.firebase.iid.WakeLockHolder
2020-03-26 21:36:15.545 3954-7849/? D/MC_BatteryStatsData: operate removing wakelock wake:com.google.firebase.messaging
2020-03-26 21:36:15.952 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21694538s,latest=-21693038s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21694538s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:36:15.999 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21694538s,latest=-21693038s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21694538s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:36:16.224 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21694538s,latest=-21693038s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21694538s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:36:16.448 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21694538s,latest=-21693038s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21694538s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:36:16.699 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21694538s,latest=-21693038s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21694538s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:36:16.843 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21694538s,latest=-21693038s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21694538s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:36:18.018 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21694540s,latest=-21693040s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21694540s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:36:18.353 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21694540s,latest=-21693040s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21694540s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:36:18.391 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21694540s,latest=-21693040s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21694540s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:36:27.943 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21694550s,latest=-21693050s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21694550s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:36:28.045 833-844/? I/ActivityManager: Start proc 7874:com.google.android.youtube/u0a76 for service com.google.android.youtube/com.firebase.jobdispatcher.GooglePlayReceiver
2020-03-26 21:36:30.017 7874-7874/? V/ActivityThread: SVC-Creating service CreateServiceData{[email protected] className=com.firebase.jobdispatcher.GooglePlayReceiver packageName=com.google.android.youtube intent=null}
2020-03-26 21:36:30.018 7874-7874/? D/ActivityThread: SVC-Calling onStartCommand: [email protected], flags=0, startId=1
2020-03-26 21:36:30.672 7874-7950/? I/FA: To enable faster debug mode event logging run:
adb shell setprop debug.firebase.analytics.app com.google.android.youtube
2020-03-26 21:36:39.832 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21694561s,latest=-21693061s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21694561s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:38:37.064 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21694679s,latest=-21693179s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21694679s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:38:37.242 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21694679s,latest=-21693179s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21694679s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:38:37.897 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21694679s,latest=-21693179s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21694679s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:38:38.108 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21694680s,latest=-21693180s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21694680s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:38:39.490 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21694681s,latest=-21693181s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21694681s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:38:40.106 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21694682s,latest=-21693182s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21694682s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:38:40.279 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21694682s,latest=-21693182s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21694682s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:38:40.842 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21694682s,latest=-21693182s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21694682s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:41:02.039 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21694824s,latest=-21693324s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21694824s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:41:02.232 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21694824s,latest=-21693324s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21694824s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:41:02.396 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21694824s,latest=-21693324s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21694824s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:44:46.832 3954-8026/? D/MC_BatteryStatsData: operate removing wakelock wake:com.google.firebase.iid.WakeLockHolder
2020-03-26 21:44:46.832 3954-8026/? D/MC_BatteryStatsData: operate removing wakelock wake:com.google.firebase.messaging
2020-03-26 21:44:51.868 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21695053s,latest=-21693553s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21695053s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:44:52.172 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21695054s,latest=-21693554s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21695054s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:48:29.061 6881-6881/? D/ActivityThread: BDC-Calling onReceive: intent=Intent { act=com.google.android.c2dm.intent.RECEIVE flg=0x10000010 pkg=com.whatsapp cmp=com.whatsapp/com.google.firebase.iid.FirebaseInstanceIdReceiver (has extras) }, [email protected]e5
2020-03-26 21:48:29.470 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21695271s,latest=-21693771s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21695271s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:48:29.695 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21695271s,latest=-21693771s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21695271s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:51:38.871 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21695460s,latest=-21693960s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21695460s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:51:39.156 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21695461s,latest=-21693961s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21695461s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:51:39.414 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21695461s,latest=-21693961s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21695461s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:51:39.537 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21695461s,latest=-21693961s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21695461s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:51:39.697 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21695461s,latest=-21693961s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21695461s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:51:39.778 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21695461s,latest=-21693961s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21695461s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:51:44.835 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21695466s,latest=-21693966s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21695466s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:51:53.533 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21695475s,latest=-21693975s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21695475s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:51:54.369 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21695476s,latest=-21693976s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21695476s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:52:19.158 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21695501s,latest=-21694001s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21695501s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:53:19.572 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21695561s,latest=-21694061s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21695561s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:53:20.282 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21695562s,latest=-21694062s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21695562s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}
2020-03-26 21:53:20.324 1153-1816/? E/ExecutionCriteria: Package unavailable for task: com.wordviewer.word.docx.reader/com.firebase.jobdispatcher.GooglePlayReceiver{u=0 tag=“com.wordviewer.word.docx.reader-job” trigger=window{start=0s,end=1500s,earliest=-21695562s,latest=-21694062s} requirements=[NET_ANY] attributes=[PERSISTED,RECURRING] scheduled=-21695562s last_run=N/A jid=N/A status=PENDING retries=0 client_lib=FIREBASE_JOB_DISPATCHER-1}

Me sale el siguiente error y no se a que se debe, ya revise la linea donde me marca error y no parece nada mal.
FAILURE: Build failed with an exception.

  • Where:
    Build file ‘C:\Users\skar6\Curso-de-Flutter-Avanzado-en-Platzi\android\app\build.gradle’ line: 24

  • What went wrong:
    A problem occurred evaluating project ‘:app’.

ASCII

  • Try:
    Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

  • Get more help at https://help.gradle.org

BUILD FAILED in 2s
Finished with error: Gradle task assembleDebug failed with exit code 1

Tuve un problema que no me registraba la app en la consola de firebase como conectada. Seguí estos pasos: Enlace

en el build.grade dentro de android va

classpath ‘com.google.gms:google-services:4.2.0’

VERIFICACIÓN DE FIREBASE NO TERMINA!!
Hola buenas tardes,
Estoy usando Visual Studio Code. Después de seguir las instrucciones, pero colocando versiones más actuales de googleservice y todas las dependencias de firebase, no me sale ningún error en la consola, el problema es que nunca termina de verificar que se ha añadido Firebase a la App. Qué podría estar pasando? Alguna ayuda? Debería seguir con el curso o sin esto no funcionará nada?

Muy Buenos días,
hay alguna forma de poder usar graphql con flutter, tengo una API con base de datos postgres y nestjs, y me gustaría probar a hacer consumos de datos.

Para ejecutar el ejemplo en un emulador con una versión de android 5.1, en mi caso fue necesario actualizar las versiones de firebase_storage: ^3.1.5 y cloud_firestore: ^0.13.5. además de realizar la actualización que menciona Diego Najera. Sin embargo al ejecutar el .apk en un dispositivo físico con una versión de android 7.0 obtengo el siguiente mensaje de error:
No se instaló la aplicación -> Esta app no es compatible con el teléfono.
Alguien está con el mismo problema? me pueden ayudar por favor ?

Alguien sabe como Generar el Codigo Sha-1 en este Projector de flutter, no encuentro la Opcion de Gradle-y el archivo signingReport.
Su ayuda Por favor

Hola, tengo el siguiente problema:

A problem occurred evaluating project ‘:app’.

Plugin with id [mi id] not found

Alguien me podria ayudar?

Buenas gente,
Conseguí correr bien la app pero la consola me arrojó los siguientes warnings:

Note: \src\flutter\.pub-cache\hosted\pub.dartlang.org\firebase_core-0.3.4\android\src\main\java\io\flutter\plugins\firebase\core\FirebaseCorePlugin.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
Note: \src\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-0.9.13+1\android\src\main\java\io\flutter\plugins\firebase\cloudfirestore\CloudFirestorePlugin.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: \src\flutter\.pub-cache\hosted\pub.dartlang.org\cloud_firestore-0.9.13+1\android\src\main\java\io\flutter\plugins\firebase\cloudfirestore\CloudFirestorePlugin.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.

A alguien le ha pasado

muy interesante. hay que considerar las version y actualizacionese que salen…

Una pregunta, por qué no aparece en ciertos proyectos la opción de “Package get” al momento de abrir el pubspec.yaml?
Sólo aparece “pub get” y “Pub upgrade”.
Muchas gracias.

porque no agregamos la version para firebase_auth y google_sign_in?

Donde puedo dejar mis aplausos?
Clap clap clap!

Hola! Necesito ayuda. Al realizar todos los pasos, una vez que intento correr ocurre este error.

Mi error:
Plugin project :firebase_core_web not found. Please update settings.gradle.
Plugin project :firebase_auth_web not found. Please update settings.gradle.
Plugin project :cloud_firestore_web not found. Please update settings.gradle.
Solucion de Stackoverflow/github:
Solucion

Bueno muchachos funcionó por fin hoy 11 de Agosto del 2020, me hice mucha bola, intentando que todo fuera perfecto pero la realidad es que es simple…

  1. Deben seguir el video al pie de la letra, descargar el SDK Android 28 (ojo no lo probé con el 30 que es el más reciente a la fecha).
  2. Deben cambiar las versiones de las dependecies en pubspec.yaml a las más recientes:
    cupertino_icons: ^0.1.3
    generic_bloc_provider: ^1.0.9
    firebase_auth:
    google_sign_in:
    flutter_facebook_login: ^3.0.0
    firebase_storage: ^3.1.6
    cloud_firestore: ^0.13.7
  3. Agregan las lineas de código que proporciona su firebase como sale en el video.
  4. Por ultimo le dan siguiente y mientras firebase se intenta conectar a la app, debes correr la aplicación (con tu celular o emulador) y listo.

Espero le ayude, cualquier duda me dicen…

Supongo que también debería ponerse “minSdkVersion 28” ya que sino podrían instalar el apk en un android anterior y no funcionaría.

Saludos

si te sale este error
classpath 'com.google.gms:google-services:3.0.0'

[url](Plugin with id ‘com.google.gms.google-services’ not found)

Mi solución al famoso error

FAILURE: Build failed with an exception.
Fue simplemente ir al archivo android \ app \ grandle/wrapper \ gradle-wrapper.properties
linea 6 y cambiar la version 4.10.2 a 5.4.1

distributionUrl=https\://services.gradle.org/distributions/gradle-5.4.1-all.zip
Espero les fucione como a mi, éxito

Si a alguien le sale este error cuando quieren correr la app:
“Plugin project :firebase_core_web not found. Please update settings.gradle”

Esta fue la solución que encontré y me funcionó. solo deben de agregar este script en settings.gradle

def flutterProjectRoot = rootProject.projectDir.parentFile.toPath()

def plugins = new Properties()

def pluginsFile = new File(flutterProjectRoot.toFile(), '.flutter-plugins')
if (pluginsFile.exists()) {

    pluginsFile.withReader('UTF-8') { reader -> plugins.load(reader) }

}

plugins.each { name, path ->
    def pluginDirectory = flutterProjectRoot.resolve(path).resolve('android').toFile()
    include ":$name"
    project(":$name").projectDir = pluginDirectory
}

Después de mucho tiempo logre correr la aplicación sin 1 solo error.

Recomiendo lo siguiente:
1)Hacer lo dice la profesora. Todo sin excepción.
2)Revisar la documentación actualizada de Flutter con Firebase Este es el Link => https://firebase.google.com/docs/flutter/setup?platform=android#analytics-not-enabled.
3) El comentario del compañero VladDark funciona si te sale ese error toma su ejemplo de solución.
4) Si te sale que actualices o configures el sdk Simplemente guarda todos los cambios, ve al archivo al archivo app/Gradle, click derecho en cualquier lado y click en Importar . Hay el proyecto se actualizara con todo y sdk.

Hola compañeros, he leido los comentarios y veo que hay muchos errores sin responder. Por el momento no he tenido errores por lo que les recomiendo que utilicen el mismo que hicieron en el curso basico de flutter. Pueden usar el git hub del curso para bajar los componentes del reto 4 de curso anterior y asi estar listos para este curso. Exitos! flutter es lo maximo!

Hola yo solucione este error:

A problem occurred evaluating project ':app'.
> Could not initialize class org.jetbrains.kotlin.gradle.plugin.sources.DefaultKotlinSourceSetKt

Actualizando los plugins de Kotlin en el Android Studio y luego actualizando el buildscript con la version 1.3.72

buildscript {
    ext.kotlin_version = '1.3.72'
    repositories {
        google()
        jcenter()
    }

Usando tambien las versiones mas recientes de firebase:

  • classpath ‘com.google.gms:google-services:4.3.3’
  • firebase_storage: ^3.1.5
  • cloud_firestore: ^0.13.0

Saludos.

Me estaba desanimando porque no podía ejecutar la app, pero al final lo pude lograr, agradezco a todos por los comentarios que han puesto me han ayudado un montón.

que pasos se debe seguir para configurar.
que otro colaborador tenga acceso al proyecto firebase y proyecto flutter?

Hola tengo 2 errores
build.gradle
(40, 12) // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
(52, 16) // TODO: Add your own signing config for the release build.