Flutter Firebase без google-services.json и GoogleService-Info.plistAndroid

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Flutter Firebase без google-services.json и GoogleService-Info.plist

Сообщение Anonymous »

Эти пакеты есть в моем pubspec.yaml:

Код: Выделить всё

  firebase_core: ^2.25.5
firebase_crashlytics: ^3.4.16
firebase_analytics: ^10.8.7
firebase_messaging: ^14.7.17
(использование самых последних версий в моем случае ничего не изменило)
Я пытаюсь настроить Flutter Firebase через

Код: Выделить всё

Firebase.initializeApp(
options: DefaultFirebaseOptions.currentPlatform
);
вместо использования значений в google-services.json для Android и GoogleService-Info.plist для iOS.
Моя цель — создать единую точку входа, настраиваемую с помощью аргументов dart-define или .env или чего-то подобного со всеми ключами API, идентификаторами пакетов и т. д. . (например, DefaultFirebaseOptions, созданный flutterfire_cli, который можно изменить с использованием обычного синтаксиса Dart с проверкой платформы, проверкой варианта и т. д.). Однако кажется невозможным удалить или даже заполнить некоторые значения заглушки в этих двух файлах конфигурации Android и iOS, поскольку плагин FB все равно просматривает их во время инициализации. Итак, я пришел к выводу, что аргумент options в методе Firebase.initializeApp почти ничего не делает, и инициализация Firebase с помощью метода «Pure Dart» бесполезна, если только вам не нужно несколько Экземпляры приложения FB внутри вашего приложения (один из них считается «по умолчанию», а другой должен иметь оригинальные имена, передаваемые аргументом name). flutterfire_cli может генерировать эти файлы конфигурации вместе с firebase_options.dart, но похоже, что мне придется продолжать управлять google-services.json для Android и flutterfire_cli. strong>GoogleService-Info.plist для iOS, как это было бы без настройки Dart.
Вы можете спросить меня, зачем мне это нужно?
Первый ответ это: «безопасность». Мой клиент хочет, чтобы ключи Firebase Api были скрыты из исходного кода, несмотря на информацию, приведенную в официальных документах FB, в которой говорится, что эти ключи предназначены для публичного доступа. Технически можно написать сценарий, который будет вставлять ключи API в google-services.json и GoogleService-Info.plist, но это кажется неудобным, поскольку эти файлы находятся под контролем исходного кода. и они нужны каждому разработчику в моей команде для запуска приложения.
Второй ответ: удобство. Было бы удобнее управлять одной точкой входа dart вместо двух точек входа платформы.
Я пробовал удалить google-services.json и GoogleService. -Info.plist полностью, и приложение не удалось собрать.
Я пытался полностью удалить из них ключевые поля API или заменить их некоторыми недопустимыми строками, и приложение аварийно завершало работу во время выполнения.Я просмотрел реализацию метода Firebase.initializeApp firebase_core и понял, что он начинается с _initializeCore(), которая просматривает собственные файлы конфигурации (исходный код)

Подробнее здесь: https://stackoverflow.com/questions/790 ... info-plist
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Flutter Firebase без google-services.json и GoogleService-Info.plist
    Anonymous » » в форуме Android
    0 Ответы
    21 Просмотры
    Последнее сообщение Anonymous
  • Flutter Firebase без google-services.json и GoogleService-Info.plist
    Anonymous » » в форуме IOS
    0 Ответы
    27 Просмотры
    Последнее сообщение Anonymous
  • Как защитить Firebase googleService.plist от iOS и googleService.json от Android
    Anonymous » » в форуме Android
    0 Ответы
    26 Просмотры
    Последнее сообщение Anonymous
  • Как защитить Firebase googleService.plist от iOS и googleService.json от Android
    Anonymous » » в форуме IOS
    0 Ответы
    19 Просмотры
    Последнее сообщение Anonymous
  • Как защитить Firebase googleService.plist от iOS и googleService.json от Android
    Anonymous » » в форуме Android
    0 Ответы
    28 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Android»