[📚] firebase_ai works on Windows, but pub.dev and the docs don't list it
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 72/100
- Tipo de issue
- Documentación
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Área
- documentation
Línea de trabajo
Comienza con la documentación de firebase_ai, pubspec y platform_header_helper.dart; después compara la lista de plataformas documentada con el comportamiento de Windows descrito aquí. Documenta la compatibilidad con Windows y sus limitaciones de API-key y App Check; si se actualiza la declaración de plataforma, confirma que pub.dev incluye Windows y prueba el paquete en Windows.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Summary
firebase_ai works on Windows desktop, but nothing says so. The pub.dev page lists Android, iOS, macOS and web, and the Firebase AI Logic Flutter docs don't mention Windows. We assumed it was unsupported and kept it disabled on Windows in our app until we tested it.
What we tested
Windows 10 22H2, debug builds:
- A minimal Flutter app with
firebase_ai3.15.0 and again with 4.0.0:Firebase.initializeApp(options: DefaultFirebaseOptions.windows), thenFirebaseAI.agentPlatform(location: 'us-central1').generativeModel(model: 'gemini-2.5-flash-lite').generateContentandgenerateContentStreamboth returned complete responses. No signed-in user, no App Check. - Our production app on 3.15.0, as an integration test with a signed-in Firebase Auth user:
generateContentandgenerateContentStreamatus-east5both returned complete responses.
We also called the REST endpoint directly with the Windows app's API key and no identity headers; global, us-central1, us-east5 and europe-west4 all answered.
Why it works
The package's only native code is the getPlatformHeaders method channel, which supplies the API-key identity headers (X-Android-Package / X-Android-Cert, x-ios-bundle-identifier). On Windows no plugin is registered, so getPlatformSecurityHeaders() in platform_header_helper.dart catches the missing channel and sends no identity headers, the same path web takes. Everything else is plain Dart HTTP.
pub.dev derives its platform tags from flutter.plugin.platforms in the pubspec. There is no windows entry, so the package shows as unsupported there.
Suggestion
- Document Windows as supported, with the two caveats that come from having no native plugin: the API key can't be restricted to a Windows app identity (it behaves like the web key), and there is no Windows App Check provider, so enforcing App Check for AI Logic would block Windows clients.
- Optionally declare Windows in the pubspec (a
dartPluginClass, or whatever you prefer) so pub.dev lists the platform.
Happy to test a change on Windows.
- Lenguaje dominante
- Dart
- Estrellas
- 9.3k
- Forks
- 4.1k
- Merge medio
- 1 d 14 h
- PR fusionados (30 d)
- 39
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de firebase/flutterfire
-
Needs Attention platform: windows plugin: cloud_firestore reproduced type: bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
firebase/flutterfire#18735 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
[cloud_firestore]: a snapshots() listener cancelled while it registers is never removed nativelyAbiertoNeeds Attention platform: android platform: ios platform: macos plugin: cloud_firestore reproduced type: bug
Dificultad 3/5 1-2 días Aptitud para principiantes 72/100
firebase/flutterfire#18724 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
blocked: customer-response platform: web plugin: cloud_firestore Stale type: bug
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
firebase/flutterfire#18700 · 3 comentarios ·
Los mantenedores suelen responder en 1 día
-
Needs Attention platform: ios plugin: messaging reproduced type: bug
Dificultad 3/5 1-2 días Aptitud para principiantes 74/100
firebase/flutterfire#18699 · 4 comentarios · 1 reacción ·
Los mantenedores suelen responder en 1 día
-
blocked: flutter platform: windows plugin: storage reproduced type: bug
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
firebase/flutterfire#18664 · 3 comentarios ·
Los mantenedores suelen responder en 1 día
Todos los issues de firebase/flutterfire
Issues similares
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 90/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
immich-app/immich#31955 ·
Los mantenedores suelen responder en 1 día
-
bug triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
fluttercommunity/plus_plugins#3994 ·
Los mantenedores suelen responder en 1 día
-
[BUG] iOS: a feature drag interrupted by the system never ends, and the next pan drags the featureAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
maplibre/flutter-maplibre-gl#1053 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100