Facebook-sdk-for-unity: v7.17.0 - FB.Init() travando no Android usando Unity 2018.2

Criado em 3 jul. 2019  ·  16Comentários  ·  Fonte: facebook/facebook-sdk-for-unity

Atualmente usando o Unity 2018.2.6
Iniciado de um projeto vazio e importado diretamente v7.17.0

Adicionada a solução alternativa deste problema que causa a primeira falha (Dependencies.xml):
<androidPackage spec="com.facebook.android:facebook-applinks:[5,6)" />

Mas a compilação ainda trava assim que você pressiona o botão FB.Init. Registros da seguinte forma:

07-03 21:39:54.555 17707 17736 E CRASH : sinal 11 (SIGSEGV), código 1 (SEGV_MAPERR), endereço de falha 00000000
07-03 21:39:54.555 17707 17736 E Acidente: * *
07-03 21:39:54.555 17707 17736 E CRASH : Construir impressão digital: 'samsung/dreamltexx/dreamlte:7.0/NRD90M/G950FXXU1AQI7:user/release-keys'
07-03 21:39:54.555 17707 17736 E CRASH : Revisão: '10'
07-03 21:39:54.555 17707 17736 E CRASH : pid: 17707, tid: 17736, name: UnityMain >>> com.imagine.imagineAR <<<
07-03 21:39:54.555 17707 17736 E CRASH : r0 00000000 r1 00000000 r2 02952163 r3 00000000
07-03 21:39:54.555 17707 17736 E CRASH : r4 c57fe490 r5 00000000 r6 00200782 r7 e55d6ec1
07-03 21:39:54.555 17707 17736 E CRASH : r8 bd835b30 r9 00000000 sl bc733d7c fp c57fe4c8
07-03 21:39:54.555 17707 17736 E CRASH : ip c6b27bec sp c57fe438 lr c5a5b228 pc e7b3f930 cpsr e4324c90
07-03 21:39:54.555 17707 17736 E ACIDENTE:
07-03 21:39:54.555 17707 17736 E CRASH : backtrace:
07-03 21:39:54.690 17707 17736 E CRASH : #00 pc 00018930 /system/lib/libc.so (strlen+71)
07-03 21:39:54.690 17707 17736 E CRASH : #1 pc 00122224 /data/app/com.imagine.imagineAR-2/lib/arm/libunity.so
07-03 21:39:54.690 17707 17736 E CRASH : #2 pc 00127304 /data/app/com.imagine.imagineAR-2/lib/arm/libunity.so
07-03 21:39:54.690 17707 17736 E CRASH : #3 pc 0000f5f4 ( (wrapper gerenciado para nativo) UnityEngine.A ndroidJNI:CallStaticStringMethod (intptr,intptr,UnityEngine.jvalue[]) + 0x4c (0xbd0145a8 ​​0xbd014638) [ 0xdbc50ee0 - Domínio Raiz da Unidade]+62964)
07-03 21:39:54.691 17707 17736 E CRASH : #4 il ........ em (wrapper gerenciado para nativo) UnityEngine.AndroidJNI.CallStaticStringMethod (intptr,intptr,UnityEngine.jvalue[]) < 0xffffffff>
07-03 21:39:54.691 17707 17736 E CRASH : #5 il 0000002c em UnityEngine.AndroidJNISafe.CallStaticStringMethod (intptr,intptr,UnityEngine.jvalue[]) <0x0002c>
07-03 21:39:54.691 17707 17736 E CRASH : #6 il 0000042b em UnityEngine.AndroidJavaObject.CallStatic (string,object[]) <0x0042b>
07-03 21:39:54.691 17707 17736 E CRASH : #7 il 0000003b em UnityEngine.AndroidJavaObject.CallStatic (string,object[]) <0x0003b>
07-03 21:39:54.691 17707 17736 E CRASH : #8 il 0000005f em Facebook.Unity.Android.AndroidWrapper.CallStatic (string) <0x0005f>
07-03 21:39:54.691 17707 17736 E CRASH : #9 il 0000005b at Facebook.Unity.Mobile.Android.AndroidFacebook..ctor (Facebook.Unity.Mobile.Android.IAndroidWrapper,Facebook.Unity.CallbackManager) <0x0005b>
07-03 21:39:54.691 17707 17736 E CRASH : #10 il 0000003f at Facebook.Unity.Mobile.Android.AndroidFacebook..ctor() <0x0003f>
07-03 21:39:54.691 17707 17736 E CRASH : #11 il 0000004f em Facebook.Unity.Mobile.Android.AndroidFacebookLoader.get_FBGameObject () <0x0004f>
07-03 21:39:54.691 17707 17736 E CRASH : #12 il 00000023 at Facebook.Unity.FB/CompiledFacebookLoader.Start() <0x00023>
07-03 21:39:54.691 17707 17736 E CRASH : #13 il 0000006b at (wrapper runtime-invoke) object.runtime_invoke_void__this_ (object,intptr,intptr,intptr) <0x0006b>
07-03 21:39:54.695 17707 17736 E CRASH : #00 pc 000225d3 /data/app/com.imagine.imagineAR-2/lib/arm/libmono.so
07-03 21:39:54.695 17707 17736 E CRASH : #1 pc 001f7bb8 /data/app/com.imagine.imagineAR-2/lib/arm/libmono.so (mono_runtime_invoke+136)
07-03 21:39:54.695 17707 17736 E CRASH : #2 pc 009ffee8 /data/app/com.imagine.imagineAR-2/lib/arm/libunity.so
07-03 21:39:54.695 17707 17736 E CRASH : #3 pc 00861ebc /data/app/com.imagine.imagineAR-2/lib/arm/libunity.so
07-03 21:39:54.695 17707 17736 E CRASH : #4 pc 00862080 /data/app/com.imagine.imagineAR-2/lib/arm/libunity.so
07-03 21:39:54.695 17707 17736 E CRASH : #5 pc 00861064 /data/app/com.imagine.imagineAR-2/lib/arm/libunity.so
07-03 21:39:54.695 17707 17736 E CRASH : #6 pc 0061f704 /data/app/com.imagine.imagineAR-2/lib/arm/libunity.so
07-03 21:39:54.695 17707 17736 E CRASH : #7 pc 0083ec0c /data/app/com.imagine.imagineAR-2/lib/arm/libunity.so
07-03 21:39:54.695 17707 17736 E CRASH : #8 pc 0083ec38 /data/app/com.imagine.imagineAR-2/lib/arm/libunity.so
07-03 21:39:54.695 17707 17736 E CRASH : #9 pc 0083edb8 /data/app/com.imagine.imagineAR-2/lib/arm/libunity.so
07-03 21:39:54.695 17707 17736 E CRASH : #10 pc 0043ec7c /data/app/com.imagine.imagineAR-2/lib/arm/libunity.so
07-03 21:39:54.695 17707 17736 E CRASH : #11 pc 004420fc /data/app/com.imagine.imagineAR-2/lib/arm/libunity.so
07-03 21:39:54.695 17707 17736 E CRASH : #12 pc 00038639 /data/app/com.imagine.imagineAR-2/oat/arm/base.odex (oatexec+4291700281)
07-03 21:39:54.695 17707 17736 E ACIDENTE:

Estou fazendo algo errado? Alguma ideia ou solução? Desde já, obrigado.

Comentários muito úteis

Estou enfrentando isso em 2019.4.7f1 também, não uma coisa de 2018.

Todos 16 comentários

Você está fazendo algo no retorno de chamada recebido do SDK do Facebook, não no MainThread?
Certifique-se de não usar nenhum objeto UnityEngine de threads laterais.

Você está fazendo algo no retorno de chamada recebido do SDK do Facebook, não no MainThread?
Certifique-se de não usar nenhum objeto UnityEngine de threads laterais.

Não que eu saiba. Esta é apenas uma importação direta do SDK para um projeto vazio do Unity.
Construiu e executou a cena de amostra do FacebookSDK (MainMenu.unity) no Android.

Você definiu o ID do aplicativo do Facebook para o projeto?

Sim, defini o ID do aplicativo do Facebook nas configurações do Facebook.
Eu tentei a nova versão 7.17.1 e parece que o erro nos links de aplicativos foi corrigido, mas ainda assim, estou enfrentando a falha acima.
Não tenho escolha a não ser reverter para 7.15.1, mas isso será descontinuado até 22 de julho, se não me engano

Tentei no Unity 2017.3.1p3 e a falha não ocorre

Ei @iMagesBlues , isso é um bug do Unity no Unity2018.2 e aqui está a discussão https://issuetracker.unity3d.com/issues/android-crash-fatal-signal-11-sigsegv-on-some-devices?page=1 #comentários e ajuste também tem o problema semelhante https://github.com/adjust/unity_sdk/issues/137. Trabalharemos e tornaremos o SDK compatível com o Unity2018.2

Olá KylinChang.
Meu aplicativo atende a mais de 10 mil usuários mensais.
e como eu li a partir de 22 de julho, a api não funcionará para mim ....
estou tentando atualizar meu SDK e encontrei um problema com arquivos específicos (após 2 dias úteis):
facebook-common.aar
facebook-share.aarr
facebook-login.aar
ao trazer todos os outros arquivos, tudo parece funcionar, exceto ... não consigo fazer login no facebook.
O que devo fazer ? temos um tempo muito limitado para esta atualização e os usuários terão que atualizar seu aplicativo muito em breve.
Obrigado.
Ômer

Ei @iMagesBlues , isso é um bug do Unity no Unity2018.2 e aqui está a discussão https://issuetracker.unity3d.com/issues/android-crash-fatal-signal-11-sigsegv-on-some-devices?page=1 #comments and adjust também tem o mesmo problema, adjust/unity_sdk#137 . Trabalharemos e tornaremos o SDK compatível com o Unity2018.2

Obrigado @KylinChang , isso seria super útil. :)
Informe-nos quando a correção estiver disponível.

Ei pessoal,

Eu estava procurando a postagem do bug no Unity Tracker (https://issuetracker.unity3d.com/issues/android-crash-fatal-signal-11-sigsegv-on-some-devices) e eles marcaram esse problema como um " não reproduzível"... este erro está me dando alguns cabelos brancos...

Está acontecendo comigo também..
Unity 2018.2.0f + SDK do Facebook 7.17
Coloquei um Debug.Log no método InitFacebook apenas para ver onde ocorre o congelamento e fiquei surpreso quando vi isso acontecendo exatamente quando chamei o método FB.Init(). Como eu estava dando uma olhada no logcat, consegui ver minha mensagem de log. Em linhas superiores, quando eu empurro o APK para um Android versão 4.2 e o inicio, a tela inicial mostra normalmente. Então, após um Invoke de 5 segundos, o FB.Init é chamado, então o aplicativo para de responder (os botões param de responder), mas o aplicativo não trava. No logcat tenho essas mensagens:

D/Serviço de Sensor (514): -0,1 0,8 9,8

I/Unity ( 2833): [AtomFlu#] inicio debug

I/Unidade (2833):

I/Unity ( 2833): (Nome do arquivo: ./Runtime/Export/Debug.bindings.h Linha: 43)

I/Unidade (2833):

I/Unity ( 2833): [AtomFlu]: InitFacebook

I/Unidade (2833):

I/Unity ( 2833): (Nome do arquivo: ./Runtime/Export/Debug.bindings.h Linha: 43)

I/Unidade (2833):

D/Serviço de Sensor (514): -0,1 0,8 9,7

I/dalvikvm( 2833): Falha ao resolver Lcom/facebook/unity/FB$2; interface 2477 'Lcom/facebook/applinks/AppLinkData$CompletionHandler;'

W/dalvikvm( 2833): Link da classe 'Lcom/facebook/unity/FB$2;' fracassado

E/dalvikvm( 2833): Não foi possível encontrar a classe 'com.facebook.unity.FB$2', referenciada pelo método com.facebook.unity.FB.FetchDeferredAppLinkData

W/dalvikvm( 2833): VFY: incapaz de resolver a nova instância 3015 (Lcom/facebook/unity/FB$2;) em Lcom/facebook/unity/FB;

D/dalvikvm(2833): VFY: substituindo o opcode 0x22 em 0x002b

I/dalvikvm( 2833): Não foi possível encontrar o método com.facebook.applinks.AppLinkData.createFromAlApplinkData, referenciado pelo método com.facebook.unity.FB.GetAppLink

W/dalvikvm(2833): VFY: incapaz de resolver o método estático 18605: Lcom/facebook/applinks/AppLinkData;.createFromAlApplinkData (Landroid/content/Intent;)Lcom/facebook/applinks/AppLinkData;

D/dalvikvm(2833): VFY: substituindo o opcode 0x71 em 0x004f

W/dalvikvm(2833): VFY: não foi possível encontrar a classe referenciada na assinatura (Lcom/facebook/applinks/AppLinkData;)

W/dalvikvm(2833): VFY: não foi possível encontrar a classe referenciada na assinatura (Lcom/facebook/applinks/AppLinkData;)

W/dalvikvm(2833): VFY: não foi possível encontrar a classe referenciada na assinatura (Lcom/facebook/applinks/AppLinkData;)

I/dalvikvm( 2833): Não foi possível encontrar o método com.facebook.applinks.AppLinkData.getRef, referenciado no método com.facebook.unity.FB.addAppLinkToMessage

W/dalvikvm( 2833): VFY: incapaz de resolver o método virtual 18608: Lcom/facebook/applinks/AppLinkData;.getRef()Ljava/lang/String;

D/dalvikvm(2833): VFY: substituindo o opcode 0x6e em 0x000f

I/dalvikvm( 2833): Falha ao resolver Lcom/facebook/unity/FB$2; interface 2477 'Lcom/facebook/applinks/AppLinkData$CompletionHandler;'

W/dalvikvm( 2833): Link da classe 'Lcom/facebook/unity/FB$2;' fracassado

D/dalvikvm(2833): DexOpt: incapaz de optar por chamada direta 0x5684 em 0x2d em Lcom/facebook/unity/FB;.FetchDeferredAppLinkData

W/dalvikvm( 2833): Não é possível combinar a classe para a parte: 'Lcom/facebook/applinks/AppLinkData;)V'

E/CRASH ( 2833): sinal 11 (SIGSEGV), código 1 (SEGV_MAPERR), endereço de falha 00000000

E/CRASH (2833): * *

E/CRASH (2833): Construir impressão digital: 'samsung/goyawifixx/ goyawifi:4.2.2/JDQ39/T110XXUANI7 :user/release-keys'

E/CRASH ( 2833): Revisão: '2'

E/CRASH ( 2833): pid: 2833, tid: 2863, name: UnityMain >>> com.QuatroOlhos.AtomFlu <<<

E/CRASH (2833): r0 00000000 r1 00000044 r2 80808080 r3 00000000

E/CRASH (2833): r4 60ece2c8 r5 00000000 r6 20700466 r7 409f6f91

E/CRASH (2833): r8 6a28bb68 r9 00000000 sl 69f8b3fc fp 60ece300

E/CRASH (2833): ip 60bf9cdc sp 60ece270 lr 5fb2f388 pc 400b3b88 cpsr 60ecdf00

E/CRASH (2833):

E/CRASH ( 2833): backtrace:

E/CRASH (2833): #00 pc 00019b88 /system/lib/libc.so (strlen+72)

E/CRASH ( 2833): #01 pc 00122384 /data/app-lib/com.QuatroOlhos.AtomFlu-11/libunity.so

E/CRASH (2833): #02 pc 00127464 /data/app-lib/com.QuatroOlhos.AtomFlu-11/libunity.so

E/CRASH ( 2833): #03 pc 0000b944 ( (wrapper gerenciado para nativo) UnityEngine.A ndroidJNI:CallStaticStringMethod (intptr,intptr,UnityEngine.jvalue[]) + 0x4c (0x6a1b48f8 0x6a1b4988) [0x61461ee0 - Unity Root Domain] +47428)

E/CRASH ( 2833): #04 il ........ em (wrapper gerenciado para nativo) UnityEngine.AndroidJNI.CallStaticStringMethod (intptr,intptr,UnityEngine.jvalue[]) <0xffffffff>

E/CRASH ( 2833): #05 il 0000002c em UnityEngine.AndroidJNISafe.CallStaticStringMethod (intptr,intptr,UnityEngine.jvalue[]) <0x0002c>

E/CRASH (2833): #06 il 0000042b em UnityEngine.AndroidJavaObject._CallStatic(string,object[]) <0x0042b>

E/CRASH (2833): #07 il 0000003b em UnityEngine.AndroidJavaObject.CallStatic(string,object[]) <0x0003b>

E/CRASH ( 2833): #08 il 0000005f em Facebook.Unity.Android.AndroidWrapper.CallStatic(cadeia) <0x0005f>

E/CRASH ( 2833): #09 il 0000005b em Facebook.Unity.Mobile.Android.AndroidFacebook..ctor (Facebook.Unity.Mobile.Android.IAndroidWrapper,Facebook.Unity.CallbackManager) <0x0005b>

E/CRASH ( 2833): #10 il 0000003f em Facebook.Unity.Mobile.Android.AndroidFacebook..ctor() <0x0003f>

E/CRASH ( 2833): #11 il 0000004f em Facebook.Unity.Mobile.Android.AndroidFacebookLoader.get_FBGameObject () <0x0004f>

E/CRASH ( 2833): #12 il 00000023 em Facebook.Unity.FB/CompiledFacebookLoader.Start () <0x00023>

E/CRASH ( 2833): #13 il 0000006b at (wrapper runtime-invoke) object.runtime_invoke_void__this__ (object,intptr,intptr,intptr) <0x0006b>

Se eu comentar a chamada FB.Init, meu aplicativo funciona corretamente.

Alguém me dá uma ajuda?

@leonardolanzellotti , acredito que os devs já estejam cientes desse erro. Ocorre apenas no Unity 2018.2. Podemos esperar pela correção na próxima versão ou atualizar nossa versão do Unity.
Acredito que @KylinChang nos dará atualizações neste tópico :)

Alguma novidade sobre isso? Estamos tendo um problema por causa do requisito de 64 bits do Google, e o FB está nos impedindo de atualizar nosso projeto para IL2CPP e .Net4. Antes de mudar para IL2CPP e .net4, o FB funcionava bem. A remoção de FB.Init() corrige a falha.

Adicionamos Debug.Logs antes e depois de FB.Init(), e ambos os logs são impressos. Mas InitCallback nunca é chamado.

A falha acontece no Unity 2018.2.0f2 e no plugin FB 7.17.2 em todos os dispositivos de teste que temos. Mesmo no projeto de amostra (projeto Unity vazio + FB 7.17.2).

Ei @carmatija , como mencionado acima, este é um problema do Unity2018, a solução temporária é usar outra versão do Unity Editor.

Ei @carmatija , como mencionado acima, este é um problema do Unity2018, a solução temporária é usar outra versão do Unity Editor.

Você tem algum cronograma de quando isso será corrigido no SDK? Assim, podemos planejar nossos lançamentos futuros com base nisso.

Estou enfrentando o mesmo na unidade 2017.4.22, acho que é devido ao suporte a x64 bits quando o removemos. O problema sumiu :(

Olá, talvez eu tenha uma solução para você.

Estamos no Unity 5.6.7f1 / Facebook v7.19.0, e tivemos a mesma falha, embora não no FB.Init, mas no FB.API.

O que eu fiz:

  1. Liguei para o FB.Init logo após o início do jogo.
  2. Liguei para FB.API logo após a conclusão da inicialização.

A ocorrência da falha não foi consistente (80% das vezes), então imaginei que tivesse algo a ver com o processo de inicialização do Unity. Portanto mudei a chamada do FB.API para um momento posterior, quando a cena já estava carregada. Isso parece fazer o trabalho, o retorno de chamada FB.API não está mais travando.

Se você ainda está tendo o travamento direto no FB.Init com sua versão do Unity, tente chamá-lo primeiro quando a cena já estiver iniciada. Talvez Invoke atrasado ou corrotina possam ajudar aqui também.

Estou enfrentando isso em 2019.4.7f1 também, não uma coisa de 2018.

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

laijingfeng picture laijingfeng  ·  6Comentários

MorganMoon picture MorganMoon  ·  7Comentários

charanjeet5ingh picture charanjeet5ingh  ·  6Comentários

sivu picture sivu  ·  6Comentários

edscodeblenders picture edscodeblenders  ·  4Comentários