Как использовать Firebase Messaging для Android с Unity (Windows версия 2019.3.3f1) - google-services. xml не создается - PullRequest
0 голосов
/ 23 марта 2020

Я следую инструкциям в документации Firebase: https://firebase.google.com/docs/unity/setup?authuser=0

Конфигурация Firebase в порядке, загружены google-сервисы. json, добавлен Firebase Unity SDK в мой проект (с использованием. NET 4.x), Активы> Play Services Resolver работает без проблем, файл единого apk строится нормально (без ошибок в консоли).

Моя проблема в том, что мое приложение не подключается к Firebase. Ошибка LogCat говорит о том, что он не нашел google-services. json (который я поместил в папку Assets и папку StreamingAssets, ни одна не работала).

LogCat

03-20 18:00:34.838: E/firebase(10335): Failed to read Firebase options from the app's resources. Either make sure google-services.json is included in your build or specify options explicitly.
03-20 18:00:34.848: E/Unity(10335): Failed to read Firebase options from the app's resources. Either make sure google-services.json is included in your build or specify options explicitly. 

Существует и эта другая ошибка

03-23 10:45:48.783: E/ActivityTrigger(4376): activityResumeTrigger: not whiteListedcom.mycompany.myproject/com.google.firebase.MessagingUnityPlayerActivity/406

Я попытался переустановить Unity Firebase SDK, и проблема все еще существует.

Глядя дальше в этой проблеме, я обнаружил, что там это python скрипт "Активы / Firebase / Редактор / generate_xml_from_google_services_ json". Это должно создать «Плагины / Android / Firebase / res / values ​​/ google-services. xml». Но при выполнении ничего не происходит, ни ошибок, ни логов, ни папок в папке «Плагины / Android / Firebase».

Если я вручную сгенерирую google-сервисы. xml и добавлю файл в эту папку "/res/values/google-services.xml", тогда работает обмен сообщениями в Firebase. Мое приложение получило токен и получило уведомление.

Я создал файл xml на этом сайте: https://dandar3.github.io/android/google-services-json-to-xml.html


Не думаю что это верное решение. Официальные документы ничего не говорят о генерации xml из json файла. Все должно работать из коробки. И у меня появилось много вопросов.

  1. Я сделал что-то не так? Почему это за сценой не работают скрипты и почему нет ошибок в журнале Unity?
  2. Когда должны генерироваться google-сервисы. xml? Это когда я открываю проект или когда запускается Android Resolver, или мне нужно вручную запускать скрипт python? Но это не работает, и официальные документы ничего не упоминают об этом.
  3. А как насчет других сгенерированных файлов, если xml не генерируется, может быть, есть другие файлы, которые не генерируются, и я буду не знаю.
  4. Должен ли я где-нибудь установить значок уведомления? Потому что полученное уведомление прошло без иконки.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...