Descreva seu ambiente de desenvolvimento aqui, dando o máximo de detalhes possível. Se você os tiver, certifique-se de incluir:
2020.1.17
9.1.0
[iOS]
version X.X.X
O que você quer alcançar?
Tentando construir em Unity Cloud Build e XCode local com 9.1.0 FB SDK.
O que você espera que aconteça?
Para que o XCode seja construído com sucesso após atualizar o SDK da unidade do Facebook.
O que realmente aconteceu? Você pode fornecer um rastreamento de pilha?
50424: ▸ Vinculando UnityFramework
50425: ▸ ❌; Símbolos indefinidos para arquitetura arm64
50426: ▸> Símbolo: _IOSFBEnableProfileUpdatesOnAccessTokenChange
50427: ▸> Referenciado em: _IOSWrapper_EnableProfileUpdatesOnAccessTokenChange_m7ADB5E4C2DE8D7EB448729C43F65D1FFECB5F0CC no Facebook.Unity.IOS.o
50428: ▸ ❌; ld: símbolo (s) não encontrado (s) para arquitetura arm64
50439: ▸ ❌; clang: erro: o comando do linker falhou com o código de saída 1 (use -v para ver a chamada)
Quais são as etapas necessárias para reproduzir esse problema?
Adicione o SDK ao Unity 2020.1.17f, faça uma construção IOS. Certifique-se de usar cocoapods.
Forneça um exemplo de código, bem como quaisquer detalhes adicionais, para nos ajudar a rastrear o problema. Se você puder fornecer um link para um projeto de teste que nos permita reproduzir o problema, isso nos ajudará imensamente na velocidade e na qualidade da correção.
Observação: lembre-se de formatar seu código para facilitar a leitura:
// INSERT YOUR CODE HERE
eu também.
Por enquanto, você pode comentar a linha abaixo no arquivo "Facebook.Unity.IOS.cpp"
reinterpret_cast(IOSFBEnableProfileUpdatesOnAccessTokenChange)(static_cast<int32_t>(___enable0));
para construir com sucesso, mas NÃO é a melhor e a solução final.
é uma solução definitivamente temporária, alguém tem uma resposta melhor?
Coloque o código a seguir antes de }
no final do arquivo FBUnityInterface.mm localizado em FacebookSDK / SDK / Editor / iOS
void IOSFBEnableProfileUpdatesOnAccessTokenChange(bool enable)
{
[[FBUnityInterface sharedInstance] IOSFBEnableProfileUpdatesOnAccessTokenChange:enable];
}
Estou vendo o mesmo erro:
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)
Minha configuração:
Versão do Editor do Unity: 2020.1.11
Versão do SDK do Unity: 9.1.0
Plataforma de instalação e Verison: [iOS] versão 14.4.2
XCode: 12.4
Eu não tentei as sugestões acima, ainda.
Por enquanto, você pode comentar a linha abaixo no arquivo "Facebook.Unity.IOS.cpp"
reinterpret_cast(IOSFBEnableProfileUpdatesOnAccessTokenChange)(static_cast<int32_t>(___enable0));
para construir com sucesso, mas NÃO é a melhor e a solução final.
é uma solução definitivamente temporária, alguém tem uma resposta melhor?
Eu tentei isso e consegui construir!
Por enquanto, você pode comentar a linha abaixo no arquivo "Facebook.Unity.IOS.cpp"
reinterpret_cast(IOSFBEnableProfileUpdatesOnAccessTokenChange)(static_cast<int32_t>(___enable0));
para construir com sucesso, mas NÃO é a melhor e a solução final.
é uma solução definitivamente temporária, alguém tem uma resposta melhor?Eu tentei isso e consegui construir!
A solução de @firatagdas também funciona para mim.
Também falha usando Unity 2019.4.31
Ele também falha ao usar o Unity 2020.1.16f1
parece falhar em toda e qualquer versão do Unity, a solução @firatagdas funciona perfeitamente e foi construída usando isso para compilar sem problemas até agora. Parece bastante impressionante, eles lançaram um SDK que nem mesmo compila em uma plataforma.
Desculpe Facebook, mas vocês são amadores. Você está tentando construir projetos ao vivo com seu SDK? E o relatório do bug está aqui por 7 dias ... E quanto ao hotfix?
Inscrito para solução oficial.
@firatagdas , Sua solução funcionou para mim também.
Alguma notícia sobre este assunto? Consigo consertar com a sugestão de @ zhengwu119 , mas preciso consertar para poder construir com a nuvem, por favor.
Coloque o código a seguir antes de
}
no final do arquivo FBUnityInterface.mm localizado em FacebookSDK / SDK / Editor / iOSvoid IOSFBEnableProfileUpdatesOnAccessTokenChange(bool enable) { [[FBUnityInterface sharedInstance] IOSFBEnableProfileUpdatesOnAccessTokenChange:enable]; }
Obrigado. Isso me ajudou.
A solução de @firatagdas funcionou para mim em 24/04/2019, obrigado @firatagdas 💯
outro para @firatagdas aqui. Facebook SDK 9.1.0 com Unity 2019.4.11f1. Coisas boas meu cara
Obrigado a @firatagdas. A solução proposta (veja abaixo) funciona para meu caso de uso. A equipe do FB pode cuidar desse bug. Parece que a solução está aqui nos comentários, pelo menos para alguns casos de uso. A correção parece ser bem simples -> deve ser fácil lançar a correção de bug.
void IOSFBEnableProfileUpdatesOnAccessTokenChange(bool enable)
{
[[FBUnityInterface sharedInstance] IOSFBEnableProfileUpdatesOnAccessTokenChange:enable];
}
Isso significa que eles nem mesmo tentam construir para iOS realmente - mas sim, @firatagdas fix funcionou para mim também. Não tenho certeza se deveria me sentir seguro o suficiente para realmente colocar isso em nosso próximo lançamento ...
Mesmo problema com Unity 2021.1.0f1 e Facebook 9.1.0
A equipe do Facebook SDK deve contratar @firatagdas para fazer as coisas
A solução
Isso deve ser corrigido na v9.2.0: https://developers.facebook.com/docs/unity/change-log
Comentários muito úteis
Coloque o código a seguir antes de
}
no final do arquivo FBUnityInterface.mm localizado em FacebookSDK / SDK / Editor / iOS