feat(firebase): tvOS support for Core, Auth, Firestore, Storage, Messaging#3
Open
MAUstaoglu wants to merge 1 commit into
Open
feat(firebase): tvOS support for Core, Auth, Firestore, Storage, Messaging#3MAUstaoglu wants to merge 1 commit into
MAUstaoglu wants to merge 1 commit into
Conversation
8d99c59 to
efe227b
Compare
…torage, Messaging
Federated `*_tvos` packages bringing Firebase to Apple TV via the flutter-tvos
toolchain, built on the Firebase Apple SDK (tvOS supported since 8.9.0):
- firebase_core_tvos — full support
- cloud_firestore_tvos — full support
- firebase_storage_tvos — full support
- firebase_auth_tvos — anonymous, email/password, email-link, Sign in with
Apple, custom-token. MFA / phone / browser-OAuth /
reCAPTCHA return `unsupported-platform` (absent from
the Firebase tvOS SDK).
- firebase_messaging_tvos — token / topic / permission. Rich-notification payload
and interaction APIs are unavailable on tvOS.
Each package re-exports the upstream Dart API and supplies the native tvOS
pluginClass; the four leaf packages depend on firebase_core_tvos. Runtime-verified
on the tvOS simulator and a physical Apple TV in AOT mode: core/auth/firestore
perform live round-trips, storage/messaging execute and surface the expected
backend/APNs errors. See each package's PORTING_REPORT.md for the native changes
and tvOS support matrix.
efe227b to
8acb66e
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds federated
*_tvosimplementations bringing Firebase to Apple TV via theflutter-tvos toolchain, built on the Firebase Apple SDK (which has supported
tvOS since 8.9.0). This closes the gap where the FlutterFire packages declare
ios/macosbut nottvos, even though the underlying native SDK runs on tvOS.firebase_core_tvoscloud_firestore_tvosfirebase_storage_tvosfirebase_auth_tvosunsupported-platform.firebase_messaging_tvosonMessage) and tapped-notification/interaction APIs are unavailable on tvOS.Each package re-exports the upstream Dart API and ships the native tvOS
pluginClass; the four leaf packages depend onfirebase_core_tvos.Runtime verification
Verified against a live Firebase project on both the tvOS simulator (JIT) and
a physical Apple TV (tvOS 26.5, AOT/profile):
firebase_core—initializeAppsucceedsfirebase_auth— anonymous sign-in returns a real usercloud_firestore— document write + read-back round-tripfirebase_storage— executes; returns a normal Storage error when no bucket is provisionedfirebase_messaging— executes; returnsapns-token-not-set(APNs needs a push-enabled profile)Platform.operatingSystem == "tvos"andPlatform.isIOS == trueconfirmed under AOT.Two issues that only surfaced at runtime were fixed:
firebase_auth_tvosaborted at plugin registration because the generated Pigeonsetup asserts every multi-factor selector exists; the tvOS-disabled methods are
now kept as
unsupported-platformstubs rather than removed.firebase_auth_tvos+firebase_messaging_tvosin the same app failed to compile(
-[FIRAuth canHandleNotification:], unavailable on tvOS); now guarded.Notes
Each package includes a
PORTING_REPORT.mddocumenting exactly which native APIswere adapted or disabled and why. These are
0.0.1initial releases; the intendedpublish order is
firebase_core_tvosfirst, then the four leaf packages.