GameAnalytics

For issues or assistance, please click here to contact Support
Crash with "sendEventsInArray" in Unreal 4.27 on Android / Quest device
Our users are getting crashes on Meta Quest 2 / Quest 3 devices when using GameAnalytics in Unreal engine. I haven't yet been able to reproduce the issue locally, but we've had 13 users affected and 107 crashes since we released a couple months ago. I'm pulling these crashes from the Oculus / Meta crashes dashboard, so I'm not 100% sure if these crashes are taking down the game process / game threads. So three questions: Any idea what's going on with this crash? Does this type of crash take down the game completely when it's running on a Quest / Android device? How should we go about fixing this issue? Version of Unreal: 4.27.2 (Oculus-VR custom engine version 57) Version of GameAnalytics plugin: 5.1.14 The stack trace looks like this: java.lang.NoSuchMethodError: No static method metafactory(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; in class Ljava/lang/invoke/LambdaMetafactory; or its super classes (declaration of 'java.lang.invoke.LambdaMetafactory' appears in /apex/ com.android.art/javalib/core-oj.jar ) at com.gameanalytics.sdk.utilities.TaskRunner.executeAsync(Unknown Source:2) at com.gameanalytics.sdk.http.GAHTTPApi.sendSdkErrorEvent(Unknown Source:235) at com.gameanalytics.sdk.http.GAHTTPApi.sendSdkErrorEvent(Unknown Source:9) at com.gameanalytics.sdk.http.GAHTTPApi.sendEventsInArray(Unknown Source:303) at com.gameanalytics.sdk.events .GAEvents.processEvents(Unknown Source:385) at com.gameanalytics.sdk.events .GAEvents.processEventQueue(Unknown Source:3) at com.gameanalytics.sdk.events .GAEvents.access$000(Unknown Source:0) at com.gameanalytics.sdk.events .GAEvents$1.execute(Unknown Source:0) at com.gameanalytics.sdk.threading.GAThreading$1.run(Unknown Source:8) at java.util.TimerThread.mainLoop( Timer.java:562 ) at java.util.TimerThread.run ( Timer.java:512 ) It looks to me like there's an event request response happening in GAHTPApi::sendEventsInArray() but the json dictionary is null and then it tries to send an sdk error event but sending that sdk error event causes a crash when it tries to use java.lang.invoke.LambdaMetafactory.
5
iOS SDK crash at launch
Create a new swift project Import GameAnalytics.xcframework 4.10.2 to the project add dependencies AppTrackingTransparency.framework (only required for XCode 12 and higher) AdSupport.framework SystemConfiguration.framework libsqlite3.tbd libz.tbd In the “Build Settings” section add the following to “Other Linker Flags”: -lC++ Init SDK as Doc says: func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { // ... other code from your project ... // Enable implementation log (disable in production) GameAnalytics.setEnabledInfoLog(true) GameAnalytics.setEnabledVerboseLog(true) // Set build version GameAnalytics.configureBuild("1.0.0") // Set available virtual currencies and item types GameAnalytics.configureAvailableResourceCurrencies(["gems", "gold"]) GameAnalytics.configureAvailableResourceItemTypes(["boost", "lives"]) // Set available custom dimensions GameAnalytics.configureAvailableCustomDimensions01(["ninja", "samurai"]) GameAnalytics.configureAvailableCustomDimensions02(["whale", "dolphin"]) GameAnalytics.configureAvailableCustomDimensions03(["horde", "alliance"]) // Initialize GameAnalytics.initialize(withGameKey: "your_key", gameSecret: "your_Secret") return true } Here is the log: Info/GA/Analytics: Info logging enabled Info/GA/Analytics: Verbose logging enabled Info/GA/Analytics: Set build version: __NSCFConstantString crash at #0 0x0000000180086a08 in objc_opt_respondsToSelector () Thread 2: EXC_BAD_ACCESS (code=1, address=0x1ec41f6) libobjc.A.dylib`objc_opt_respondsToSelector: 0x1800869f4 <+0>: cbz x0, 0x180086a18 ; <+36> 0x1800869f8 <+4>: mov x8, x1 0x1800869fc <+8>: tbnz x0, #0x3f, 0x180086a1c ; <+40> 0x180086a00 <+12>: ldr x9, [x0] 0x180086a04 <+16>: and x2, x9, #0x7ffffffffffff8 -> 0x180086a08 <+20>: ldrsh w9, [x2, #0x1e] 0x180086a0c <+24>: tbz w9, #0x1f, 0x180086a50 ; <+92> 0x180086a10 <+28>: mov x1, x8 0x180086a14 <+32>: b 0x1800625f4 ; class_respondsToSelector_inst 0x180086a18 <+36>: ret 0x180086a1c <+40>: adrp x9, 443242 0x180086a20 <+44>: add x9, x9, #0xa00 ; objc_debug_taggedpointer_classes 0x180086a24 <+48>: and x10, x0, #0x7 0x180086a28 <+52>: ldr x2, [x9, x10, lsl #3] 0x180086a2c <+56>: adrp x9, 443242 0x180086a30 <+60>: add x9, x9, #0x170 ; (void *)0x00000001ec3f0120: __NSUnrecognizedTaggedPointer 0x180086a34 <+64>: cmp x2, x9 0x180086a38 <+68>: b.ne 0x180086a08 ; <+20> 0x180086a3c <+72>: ubfx x9, x0, #55, #8 0x180086a40 <+76>: adrp x10, 443242 0x180086a44 <+80>: add x10, x10, #0x200 ; objc_debug_taggedpointer_ext_classes 0x180086a48 <+84>: ldr x2, [x10, x9, lsl #3] 0x180086a4c <+88>: b 0x180086a08 ; <+20> 0x180086a50 <+92>: adrp x9, 395193 0x180086a54 <+96>: add x1, x9, #0xfb0 0x180086a58 <+100>: mov x2, x8 0x180086a5c <+104>: b 0x18005f000 ; objc_msgSend
1
Unity SDK Class Not found issue
We are using Game Analytic SDK v 7.7.2 with Unity LTS 2021.3.31f1. we are seeing a warning in the Device log about Some native code is not found by Game Analytics SDK Utilities for Android OS. Added the log Below 2024-03-09 19:44:38.554 27948 28403 Warn System.err java.lang.ClassNotFoundException: com.huawei.hms.ads.identifier.AdvertisingIdClient 2024-03-09 19:44:38.554 27948 28403 Warn System.err at java.lang.Class.classForName(Native Method) 2024-03-09 19:44:38.554 27948 28403 Warn System.err at java.lang.Class.forName(Class.java:536) 2024-03-09 19:44:38.554 27948 28403 Warn System.err at java.lang.Class.forName(Class.java:467) 2024-03-09 19:44:38.554 27948 28403 Warn System.err at com.gameanalytics.sdk.utilities.Reflection.invokeStaticMethod(Reflection.java:1) 2024-03-09 19:44:38.554 27948 28403 Warn System.err at com.gameanalytics.sdk.utilities.Reflection.getAdvertisingInfoObject(Reflection.java:32) 2024-03-09 19:44:38.554 27948 28403 Warn System.err at com.gameanalytics.sdk.utilities.Reflection.getAdId(Reflection.java:6) 2024-03-09 19:44:38.554 27948 28403 Warn System.err at com.gameanalytics.sdk.utilities.GAUtilities.getOAID(GAUtilities.java:4) 2024-03-09 19:44:38.554 27948 28403 Warn System.err at com.gameanalytics.sdk.device.GADevice.getOAID(GADevice.java:41) 2024-03-09 19:44:38.554 27948 28403 Warn System.err at com.gameanalytics.sdk.state.GAState.getIdentifier(GAState.java:65) 2024-03-09 19:44:38.554 27948 28403 Warn System.err at com.gameanalytics.sdk.state.GAState.getInitAnnotations(GAState.java:14) 2024-03-09 19:44:38.554 27948 28403 Warn System.err at com.gameanalytics.sdk.http.GAHTTPApi.requestInitReturningDict(GAHTTPApi.java:138) 2024-03-09 19:44:38.554 27948 28403 Warn System.err at com.gameanalytics.sdk.state.GAState.startNewSession(GAState.java:71) 2024-03-09 19:44:38.554 27948 28403 Warn System.err at com.gameanalytics.sdk.state.GAState.internalInitialize(GAState.java:50) 2024-03-09 19:44:38.554 27948 28403 Warn System.err at com.gameanalytics.sdk.GameAnalytics$15.execute(GameAnalytics.java:65) 2024-03-09 19:44:38.554 27948 28403 Warn System.err at com.gameanalytics.sdk.threading.GAThreading$1.run(GAThreading.java:9) 2024-03-09 19:44:38.554 27948 28403 Warn System.err at java.util.TimerThread.mainLoop(Timer.java:563) 2024-03-09 19:44:38.554 27948 28403 Warn System.err at java.util.TimerThread.run(Timer.java:513) 2024-03-09 19:44:38.554 27948 28403 Warn System.err Caused by: java.lang.ClassNotFoundException: com.huawei.hms.ads.identifier.AdvertisingIdClient 2024-03-09 19:44:38.554 27948 28403 Warn System.err ... 17 more
2
·

in progress

Load More