Facebook-sdk-for-unity: v7.17.0 NoClassDefFoundError: Failed resolution of: Lcom/facebook/applinks/AppLinkData;

Created on 3 Jul 2019  路  11Comments  路  Source: facebook/facebook-sdk-for-unity

07-03 13:37:53.557 24755-24856/? E/Unity: AndroidJavaException: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/facebook/applinks/AppLinkData;
java.lang.NoClassDefFoundError: Failed resolution of: Lcom/facebook/applinks/AppLinkData;
at java.lang.reflect.Executable.getParameterTypesInternal(Native Method)
at java.lang.reflect.Method.getParameterTypes(Method.java:186)
at java.lang.Class.getDeclaredMethods(Class.java:1881)
at com.unity3d.player.ReflectionHelper.getMethodID(Unknown Source:26)
at com.unity3d.player.UnityPlayer.nativeRender(Native Method)
at com.unity3d.player.UnityPlayer.c(Unknown Source:0)
at com.unity3d.player.UnityPlayer$e$2.queueIdle(Unknown Source:72)
at android.os.MessageQueue.next(MessageQueue.java:395)
at android.os.Looper.loop(Looper.java:181)
at com.unity3d.player.UnityPlayer$e.run(Unknown Source:32)
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.facebook.applinks.AppLinkData" on path: DexPathList[[zip file "/data/app/com.companyname.gamename-vjj0TQJg2ls3rn4VgmMhHg==/base.apk"],nativeLi

Most helpful comment

It's unity sdk bug.
Add :

    <androidPackage spec="com.facebook.android:facebook-applinks:[5,6)" />

To the Dependencies.xml in your facebooksdk folder, then resolve it using jar resolver.

Do we have to import something for iOS as well?

All 11 comments

I got the same issue too

Bug on ActivateApp
private void Activate() { if (FB.IsInitialized) { Debug.Log("FB.ActivateApp() FB.IsInitialized"); FB.ActivateApp(); } else { Debug.Log("FB.Init()"); FB.Init(() => { IsInitialized = true; Debug.Log("FB.ActivateApp()"); FB.ActivateApp(); }); } }

`07-03 13:53:06.538 30586-30680/? I/games.gamename: Rejecting re-init on previously-failed class java.lang.Class: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/facebook/applinks/AppLinkData$CompletionHandler;
at java.lang.Class java.lang.Class.classForName(java.lang.String, boolean, java.lang.ClassLoader) (Class.java:-2)
at java.lang.Class java.lang.Class.forName(java.lang.String, boolean, java.lang.ClassLoader) (Class.java:453)
at java.lang.Class java.lang.Class.forName(java.lang.String) (Class.java:378)
at boolean com.unity3d.player.UnityPlayer.nativeRender() ((null):-2)
at boolean com.unity3d.player.UnityPlayer.c(com.unity3d.player.UnityPlayer) ((null):-1)
at boolean com.unity3d.player.UnityPlayer$e$2.queueIdle() ((null):-1)
at android.os.Message android.os.MessageQueue.next() (MessageQueue.java:395)
at void android.os.Looper.loop() (Looper.java:181)
at void com.unity3d.player.UnityPlayer$e.run() ((null):-1)
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.facebook.applinks.AppLinkData$CompletionHandler" on path: DexPathList[[zip file "/data/app/com.companyname.gamename-LEYUhV4_KEPWYWhJUAdTlg==/base.apk"],nativeLibraryDirectories=[/data/app/com.companyname.gamename-LEYUhV4_KEPWYWhJUAdTlg==/lib/arm, /data/app/com.companyname.gamename-LEYUhV4_KEPWYWhJUAdTlg==/base.apk!/lib/armeabi-v7a, /system/lib, /system/vendor/lib]]
at java.lang.Class dalvik.system.BaseDexClassLoader.findClass(java.lang.String) (BaseDexClassLoader.java:134)
at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String, boolean) (ClassLoader.java:379)
at java.lang.Class java.lang.ClassLoader.loadClass(java.lang.String) (ClassLoader.java:312)
at java.lang.Class java.lang.Class.classForName(java.lang.String, boolean, java.lang.ClassLoader) (Class.java:-2)
at java.lang.Class java.lang.Class.forName(java.lang.String, boolean, java.lang.ClassLoader) (Class.java:453)
at java.lang.Class java.lang.Class.forName(java.lang.String) (Class.java:378)
at boolean com.unity3d.player.UnityPlayer.nativeRender() ((null):-2)
at boolean com.unity3d.player.UnityPlayer.c(com.unity3d.player.UnityPlayer) ((null):-1)
at boolean com.unity3d.player.UnityPlayer$e$2.queueIdle() ((null):-1)
at android.os.Message android.os.MessageQueue.next() (MessageQueue.java:395)
at void android.os.Looper.loop() (Looper.java:181)
at void com.unity3d.player.UnityPlayer$e.run() ((null):-1)
Rejecting re-init on previously-failed class java.lang.Class: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/facebook/applinks/AppLinkData$CompletionHandler;
at java.lang.Class java.lang.Class.classForName(java.lang.String, boolean, java.lang.ClassLoader) (Class.java:-2)
at java.lang.Class java.lang.Class.forName(java.lang.String, boolean, java.lang.ClassLoader) (Class.java:453)
at java.lang.Class java.lang.Class.forName(java.lang.String) (Class.java:378)
at boolean com.unity3d.player.UnityPlayer.nativeRender() ((null):-2)
at boolean com.unity3d.player.UnityPlayer.c(com.unity3d.player.UnityPlayer) ((null):-1)
at boolean com.unity3d.player.UnityPlayer$e$2.queueIdle() ((null):-1)
at android.os.Message android.os.MessageQueue.next() (MessageQueue.java:395)
at void android.os.Looper.loop() (Looper.java:181)
at void com.unity3d.player.UnityPlayer$e.run() ((null):-1)
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.facebook.applinks.AppLinkData$CompletionHandler" on path: DexPathList[[zip file "/data/app/com.companyname.gamename-LEYUhV4_KEPWYWhJUAdTlg==/base.apk"],nativeLibraryDirectories=[/data/app/com.companyname.gamename-LEYUhV4_KEPWYWhJUAdTlg==/lib/arm, /data/app/com.companyname.gamename-LEYUhV4_KEPWYWhJUAdTlg==/base.apk!/lib/armeabi-v7a, /system/lib, /system/vendor/lib]]
at java.lang.Class dalvik.system.BaseDexClassLoader.findClass(java.lang.String) (BaseDexClassLoader.java:134)
07-03 13:53:06.550 30586-30680/? V/com.facebook.unity.FB: SetUserAgentSuffix(Unity.7.17.0)
07-03 13:53:06.564 30586-30680/? V/com.facebook.unity.FB: Init({"appId":"551918925300215"})
07-03 13:53:06.565 30586-30680/? D/com.facebook.unity.FB: KeyHash: YT1UmUc/nzlf9H4E3Kpr/XbJfnI=
07-03 13:53:06.565 30586-30680/? V/com.facebook.unity.FB: sending to Unity OnInitComplete({"key_hash":"YT1UmUc\/nzlf9H4E3Kpr\/XbJfnI=\n"})
07-03 13:53:06.572 30586-30680/? I/Unity: Using Facebook Unity SDK v7.17.0 with FBAndroidSDK/5.1.1

(Filename: ./Runtime/Export/Debug.bindings.h Line: 45)

07-03 13:53:06.660 30586-30680/? V/com.facebook.unity.FB: LogAppEvent({"logEvent":"StartAnalytics"})
07-03 13:53:06.886 30586-30680/? E/Unity: AndroidJavaException: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/facebook/applinks/AppLinkData;
java.lang.NoClassDefFoundError: Failed resolution of: Lcom/facebook/applinks/AppLinkData;
at java.lang.reflect.Executable.getParameterTypesInternal(Native Method)
at java.lang.reflect.Method.getParameterTypes(Method.java:186)
at java.lang.Class.getDeclaredMethods(Class.java:1881)
at com.unity3d.player.ReflectionHelper.getMethodID(Unknown Source:26)
at com.unity3d.player.UnityPlayer.nativeRender(Native Method)
at com.unity3d.player.UnityPlayer.c(Unknown Source:0)
at com.unity3d.player.UnityPlayer$e$2.queueIdle(Unknown Source:72)
at android.os.MessageQueue.next(MessageQueue.java:395)
at android.os.Looper.loop(Looper.java:181)
at com.unity3d.player.UnityPlayer$e.run(Unknown Source:32)
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.facebook.applinks.AppLinkData" on path: DexPathList[[zip file "/data/app/com.companyname.gamename-LEYUhV4_KEPWYWhJUAdTlg==/base.apk"],nativeLi
`

Did you manage to get the fix ?

Not yet.

It's unity sdk bug.
Add :

    <androidPackage spec="com.facebook.android:facebook-applinks:[5,6)" />

To the Dependencies.xml in your facebooksdk folder, then resolve it using jar resolver.

Do we have to import something for iOS as well?

It's unity sdk bug.
Add :

    <androidPackage spec="com.facebook.android:facebook-applinks:[5,6)" />

To the Dependencies.xml in your facebooksdk folder, then resolve it using jar resolver.

Do we have to import something for iOS as well?

Tried adding and got a new crash error:

07-03 21:39:54.555 17707 17736 E CRASH : signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 00000000
07-03 21:39:54.555 17707 17736 E CRASH : * *
07-03 21:39:54.555 17707 17736 E CRASH : Build fingerprint: 'samsung/dreamltexx/dreamlte:7.0/NRD90M/G950FXXU1AQI7:user/release-keys'
07-03 21:39:54.555 17707 17736 E CRASH : Revision: '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 CRASH :
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 : #01 pc 00122224 /data/app/com.imagine.imagineAR-2/lib/arm/libunity.so
07-03 21:39:54.690 17707 17736 E CRASH : #02 pc 00127304 /data/app/com.imagine.imagineAR-2/lib/arm/libunity.so
07-03 21:39:54.690 17707 17736 E CRASH : #03 pc 0000f5f4 ( (wrapper managed-to-native) UnityEngine.AndroidJNI:CallStaticStringMethod (intptr,intptr,UnityEngine.jvalue[]) + 0x4c (0xbd0145a8 0xbd014638) [0xdbc50ee0 - Unity Root Domain]+62964)
07-03 21:39:54.691 17707 17736 E CRASH : #04 il ........ at (wrapper managed-to-native) UnityEngine.AndroidJNI.CallStaticStringMethod (intptr,intptr,UnityEngine.jvalue[]) <0xffffffff>
07-03 21:39:54.691 17707 17736 E CRASH : #05 il 0000002c at UnityEngine.AndroidJNISafe.CallStaticStringMethod (intptr,intptr,UnityEngine.jvalue[]) <0x0002c>
07-03 21:39:54.691 17707 17736 E CRASH : #06 il 0000042b at UnityEngine.AndroidJavaObject._CallStatic (string,object[]) <0x0042b>
07-03 21:39:54.691 17707 17736 E CRASH : #07 il 0000003b at UnityEngine.AndroidJavaObject.CallStatic (string,object[]) <0x0003b>
07-03 21:39:54.691 17707 17736 E CRASH : #08 il 0000005f at Facebook.Unity.Android.AndroidWrapper.CallStatic (string) <0x0005f>
07-03 21:39:54.691 17707 17736 E CRASH : #09 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 at 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 : #01 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 : #02 pc 009ffee8 /data/app/com.imagine.imagineAR-2/lib/arm/libunity.so
07-03 21:39:54.695 17707 17736 E CRASH : #03 pc 00861ebc /data/app/com.imagine.imagineAR-2/lib/arm/libunity.so
07-03 21:39:54.695 17707 17736 E CRASH : #04 pc 00862080 /data/app/com.imagine.imagineAR-2/lib/arm/libunity.so
07-03 21:39:54.695 17707 17736 E CRASH : #05 pc 00861064 /data/app/com.imagine.imagineAR-2/lib/arm/libunity.so
07-03 21:39:54.695 17707 17736 E CRASH : #06 pc 0061f704 /data/app/com.imagine.imagineAR-2/lib/arm/libunity.so
07-03 21:39:54.695 17707 17736 E CRASH : #07 pc 0083ec0c /data/app/com.imagine.imagineAR-2/lib/arm/libunity.so
07-03 21:39:54.695 17707 17736 E CRASH : #08 pc 0083ec38 /data/app/com.imagine.imagineAR-2/lib/arm/libunity.so
07-03 21:39:54.695 17707 17736 E CRASH : #09 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 CRASH :

Any other ideas?

That is not related bug to the current one.
It looks like you are getting the crash from YOUR/Engine code like it's called UnityEngine things not from the MainThread. But I'm not sure, it's hard to read such a log from that.

I'm not from facebook, but firstly:

  • Check if you have proguard enabled if yes, please check your settings.
  • Check if you have minification enabled.
  • Make sure your AndroidDependencies got all required things written on.
  • Check your gradle template.

You should make different thread, as i think this thread should be closed, marked as waiting for fix.

Thanks for the quick reply,
I have now filed a new bug here
For your reference, I have started an empty Unity project and imported the SDK (v7.17.0) directly.

Unity version: 2018.2.6
Not using proguard file
Minify set to None
Using the default Manifest from SDK
Not using a custom gradle template

It's unity sdk bug.
Add :

    <androidPackage spec="com.facebook.android:facebook-applinks:[5,6)" />

To the Dependencies.xml in your facebooksdk folder, then resolve it using jar resolver.

Do we have to import something for iOS as well?

Thanks for providing the solution, I don't think iOS needs extra import, as app links is part of CoreKit for iOS.

v7.17.1 fixes this issue with app-links listed in Dependencies.xml

Was this page helpful?
0 / 5 - 0 ratings

Related issues

Shaitan1805 picture Shaitan1805  路  6Comments

michelleran picture michelleran  路  6Comments

pvalium picture pvalium  路  6Comments

derwaldgeist picture derwaldgeist  路  4Comments

michelleran picture michelleran  路  4Comments