Сбой инициализации Firebase в редакторе Unity - PullRequest
1 голос
/ 15 апреля 2020

Для настройки Firebase для моего игрового проекта Unity, я следовал этому руководству с самого начала:

Начало работы с Firebase в Unity (2019) - Firecasts

В видео есть код для инициализации Firebase SDK:

void Start()
{
    FirebaseApp.CheckAndFixDependenciesAsync().ContinueWith(continuationAction: task =>
    {
        FirebaseAnalytics.SetAnalyticsCollectionEnabled(true);
    });
}

Теперь, когда я нажимаю sh кнопку воспроизведения в редакторе Unity, на spot Я получаю это диалоговое окно с ошибкой: enter image description here

После того, как я нажимал кнопку отмены несколько раз в разных диалоговых окнах, я получал эти ошибки в консоли. enter image description here

Что я делаю неправильно в этом процессе, что я не могу понять! Поэтому, пожалуйста, помогите мне решить эту проблему.

Ответы [ 2 ]

3 голосов
/ 20 апреля 2020

Чтобы расширить ответ @ 0xBFE1A8:

Это функция безопасности Catalina, смешанная с фреймворками Firebase, которые не подписываются так, как им нравится. Разрешение состоит из трех этапов.

Сначала запустите и получите действительно раздражающее диалоговое окно. Нажмите отменить на нем. Возможно, вам придется сделать это много. Dialog box saying

Если вы нажмете «Переместить в Tra sh», Firebase не будет работать в редакторе Unity (.bundle для MacOS, содержащем собственную логику C ++ c не будет существовать).

Далее откройте Системные настройки: System preferences in Apple menu

Выберите «Безопасность и конфиденциальность»: System Preferences menu with a box around

И в разделе «Общие» убедитесь, что вы «Разрешить приложения, загруженные из App Store и идентифицированных разработчиков» (это будет серым, пока вы не нажмете кнопку разблокировки в левом нижнем углу) и выберите «Разрешить в любом случае» для FirebaseCppApp. -6_13_0.bundle. General and Allow Anyway selected in the Security & Privacy dialog

Я не знаю, нужно ли «Разрешить загрузку приложений из App Store и идентифицированных разработчиков», но я его установил.

Наконец, запустите вашу игру еще раз в редакторе Unity. Теперь у вас будет опция «Открыть»: Dialog box with open option

Если вы нажмете на это, вам следует набрать go.

Примечание здесь: для некоторых версий MacOS Catalina, Unity и Firebase мне пришлось остановиться и запустить свою игру еще раз. В последнее время мне не приходилось делать это, но учтите, что вам, возможно, придется переключать игру еще раз.

По моему опыту, вы должны выполнять этот танец один раз за проект. Даже несмотря на то, что вам приходится многократно нажимать кнопку «Отмена», кажется, что после того, как вы сделаете одно утверждение, оно просто залипает.

Надеюсь, это немного поможет, первоначальный ответ верен.

Ох, и еще одна заметка. Это касается защиты Apple (вы говорите, что запускаете этот код C, я доверяю разработчику). Я адвокат разработчика для Firebase, поэтому я, конечно, в порядке, просто позволяя Firebase делать свое дело, и я предполагаю, что если вы используете SDK, у вас уже есть какое-то неявное доверие к нему. Вы не предоставляете Firebase root доступ или что-то в этом роде, но вы запускаете двоичный код на своей машине (часть C ++, которую вы можете просмотреть здесь ). Вы должны относиться к библиотекам разработки точно так же, как к любому другому исполняемому файлу, запущенному на вашем компьютере, и убедитесь, что вы доверяете SDK, прежде чем выполнять эти шаги для любой другой интеграции.

0 голосов
/ 15 апреля 2020

Просто go в настройках безопасности на вашей ма c, и вы увидите, что Firebase заблокирован, поскольку у него нет доверенного разработчика. Разрешите, чтобы все это заработало.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...