Facebook-sdk-for-unity: 9.1.0 - Неопределенный символ: _IOSFBEnableProfileUpdatesOnAccessTokenChange

Созданный на 13 апр. 2021  ·  22Комментарии  ·  Источник: facebook/facebook-sdk-for-unity

Контрольный список

Среда

Опишите здесь свою среду разработки, предоставив как можно больше подробностей. Если они у вас есть, обязательно включите:

  • Версия редактора Unity: 2020.1.17
  • Версия Unity SDK: 9.1.0
  • Платформа установки и версия: [iOS] version X.X.X
  • XCode: 12.4 (самая высокая версия, доступная в Unity Cloud Build)

Цели

Чего ты хочешь добиться?
Попытка собрать Unity Cloud Build и локальный XCode с 9.1.0 FB SDK.

Ожидаемые результаты

Чего вы ожидаете?
Для успешной сборки XCode после обновления sdk-файла facebook unity.

Фактические результаты

Что на самом деле произошло? Можете ли вы предоставить трассировку стека?
50424: ▸ Связывание UnityFramework
50425: ▸ ❌; Неопределенные символы для архитектуры arm64
50426: ▸> Символ: _IOSFBEnableProfileUpdatesOnAccessTokenChange
50427: ▸> Ссылка на: _IOSWrapper_EnableProfileUpdatesOnAccessTokenChange_m7ADB5E4C2DE8D7EB448729C43F65D1FFECB5F0CC в Facebook.Unity.IOS.o
50428: ▸ ❌; ld: символ (ы) не найден для архитектуры arm64
50439: ▸ ❌; clang: error: команда компоновщика завершилась неудачно с кодом выхода 1 (используйте -v, чтобы увидеть вызов)

Действия по воспроизведению

Что нужно сделать, чтобы воспроизвести эту проблему?
Добавьте SDK в Unity 2020.1.17f, выполните сборку IOS. Обязательно используйте кокосы.

Примеры кода и подробности

Предоставьте образец кода, а также любые дополнительные сведения, чтобы помочь нам отследить проблему. Если вы можете предоставить ссылку на тестовый проект, который позволяет нам воспроизвести проблему, это очень поможет нам как в скорости, так и в качестве исправления.

Примечание. Не забудьте отформатировать код для удобства чтения:

// INSERT YOUR CODE HERE

Самый полезный комментарий

Поместите следующий код перед } в конце файла FBUnityInterface.mm, расположенного в FacebookSDK / SDK / Editor / iOS

  void IOSFBEnableProfileUpdatesOnAccessTokenChange(bool enable)
  {
    [[FBUnityInterface sharedInstance] IOSFBEnableProfileUpdatesOnAccessTokenChange:enable];
  }

Все 22 Комментарий

я тоже.

А пока вы можете прокомментировать строку ниже в файле «Facebook.Unity.IOS.cpp»

reinterpret_cast(IOSFBEnableProfileUpdatesOnAccessTokenChange)(static_cast<int32_t>(___enable0));

для успешной сборки, но это НЕ лучшее и окончательное решение.
это определенно временное решение, у кого-то есть ответ получше?

Поместите следующий код перед } в конце файла FBUnityInterface.mm, расположенного в FacebookSDK / SDK / Editor / iOS

  void IOSFBEnableProfileUpdatesOnAccessTokenChange(bool enable)
  {
    [[FBUnityInterface sharedInstance] IOSFBEnableProfileUpdatesOnAccessTokenChange:enable];
  }

У меня такая же ошибка:

Undefined symbols for architecture arm64: "_IOSFBEnableProfileUpdatesOnAccessTokenChange", referenced from: _IOSWrapper_EnableProfileUpdatesOnAccessTokenChange_m7ADB5E4C2DE8D7EB448729C43F65D1FFECB5F0CC in Facebook.Unity.IOS.o _IOSWrapper_IOSFBEnableProfileUpdatesOnAccessTokenChange_m7E35B38EDDDF18DE2B0B960DA8269D277C8FBCAB in Facebook.Unity.IOS.o (maybe you meant: _IOSWrapper_IOSFBEnableProfileUpdatesOnAccessTokenChange_m7E35B38EDDDF18DE2B0B960DA8269D277C8FBCAB) ld: symbol(s) not found for architecture arm64 clang: error: linker command failed with exit code 1 (use -v to see invocation)

Моя установка:

Версия редактора Unity: 2020.1.11
Версия Unity SDK: 9.1.0
Платформа и версия установки: [iOS] версия 14.4.2
XCode: 12.4

Я еще не пробовал вышеуказанные предложения.

А пока вы можете прокомментировать строку ниже в файле «Facebook.Unity.IOS.cpp»

reinterpret_cast(IOSFBEnableProfileUpdatesOnAccessTokenChange)(static_cast<int32_t>(___enable0));

для успешной сборки, но это НЕ лучшее и окончательное решение.
это определенно временное решение, у кого-то есть ответ получше?

Я попробовал это и смог построить!

А пока вы можете прокомментировать строку ниже в файле «Facebook.Unity.IOS.cpp»
reinterpret_cast(IOSFBEnableProfileUpdatesOnAccessTokenChange)(static_cast<int32_t>(___enable0));
для успешной сборки, но это НЕ лучшее и окончательное решение.
это определенно временное решение, у кого-то есть ответ получше?

Я попробовал это и смог построить!

Решение @firatagdas тоже работает для меня.

Также не удается использовать Unity 2019.4.31

Также не удается использовать Unity 2020.1.16f1

похоже, что все версии Unity не работают, решение

Извините, Facebook, но вы любители. Вы даже пытаетесь создавать живые проекты с помощью SDK? И отчет об ошибке здесь 7 дней ... А как насчет хотфикса?

Подписан на официальное решение.

@firatagdas , Его решение

Есть новости по этому поводу? Мне удалось исправить с помощью предложения

Поместите следующий код перед } в конце файла FBUnityInterface.mm, расположенного в FacebookSDK / SDK / Editor / iOS

  void IOSFBEnableProfileUpdatesOnAccessTokenChange(bool enable)
  {
    [[FBUnityInterface sharedInstance] IOSFBEnableProfileUpdatesOnAccessTokenChange:enable];
  }

Спасибо. Мне это помогло.

Решение @firatagdas сработало для меня с 2019.4.24, спасибо @firatagdas 💯

еще один для @firatagdas здесь. Facebook SDK 9.1.0 с Unity 2019.4.11f1. Хорошие вещи, чувак

Спасибо @firatagdas. Предлагаемое решение (см. Ниже) подходит для моего варианта использования. Команда FB может решить эту проблему. Похоже, решение здесь, в комментариях, по крайней мере, для некоторых случаев использования. Исправление кажется довольно простым -> должно быть легко выпустить исправление ошибки.

void IOSFBEnableProfileUpdatesOnAccessTokenChange(bool enable)
  {
    [[FBUnityInterface sharedInstance] IOSFBEnableProfileUpdatesOnAccessTokenChange:enable];
  }

Это означает, что они даже не пытаются собирать для iOS, но да, исправление тоже сработало. Не уверен, что буду чувствовать себя в достаточной безопасности, чтобы на самом деле включить это в наш следующий релиз ...

Та же проблема с Unity 2021.1.0f1 и Facebook 9.1.0

Команда разработчиков SDK Facebook должна нанять @firatagdas, чтобы мертвой точки .

Решение @firatagdas работало для нас на Unity 2019.4.13f1. Большое спасибо, дружище.

Это должно быть исправлено в версии 9.2.0: https://developers.facebook.com/docs/unity/change-log.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги

Смежные вопросы

alchemyincarnate picture alchemyincarnate  ·  4Комментарии

pvalium picture pvalium  ·  6Комментарии

MorganMoon picture MorganMoon  ·  7Комментарии

1901 picture 1901  ·  6Комментарии

edscodeblenders picture edscodeblenders  ·  4Комментарии