Chartboost Crash after back from Interstitial + Multitasking

Hi,
at 1. sorry for my bad english :slight_smile:

I have one little game builded with Unity 5 android 2.3.3. Then i have integrated last chartboost 5.2.1. Test mode is enabled. I can see static interstitial. If i tap on interstitial, i can see the test site from chartboost, but if i will go back to my game with “Back” button, then my game is crashing.

I have deleted all chartboost files and tried to run the game without chartboost. If i switch to androidsystem (by running game) and then back to game, then game is crashing. Is here one bug with multitasking, or i am doing something wrong ? :slight_smile: I am using old samsung i9000, last android sdk 5.1.1, i will build for 2.3.3 (should i have 2.3.3 sdk, or i can do it with 5.1.1 ? )

and thanks for helping :slight_smile:

unity is Release 5.0.1p3

Do you have the crash log (from logcat) ? it can be really helpful in determining the root cause for the issue.

From my experience (especially with older devices), exiting the game activity and navigating to another one causes the game to end in the background (either since these devices don’t support multitasking or because they’re low on memory). Navigating back to the game attempts to navigate to an already “dead” activity. We have the same bug with older devices and the Facebook SDK.

You can contact Chartboost support to ask them if they are aware of this issue and whether they’re planning a fix for it.

1 Like

ok, i think i should now google, how to logcat :slight_smile:

I have contacted Chartboost - support, they have tested my test-app (builded with android 2.3.3 + chartboost 5.2.1) and said, they have crash too. Then i got one other test-app from support (i dont know, what android was that + chartboost 5.2.1). This app was definitly better, but sometime it was crashing too, if it was longer in background).

So i think you are right with, “From my experience (especially with older devices), exiting the game activity and navigating to another one causes the game to end in the background (either since these devices don’t support multitasking or because they’re low on memory). Navigating back to the game attempts to navigate to an already “dead” activity. We have the same bug with older devices and the Facebook SDK.”

The support from chartboost said too, that it can be one old device or low android version.

here is log from acatlog, level warning.

the app is test app from sdk chartboost

CatLog Level- warning

-------- beginning of /dev/log/system
W/InputManagerService( 129): Window already focused, ignoring focus gain of: com.android.internal.view.IInputMethodClient$Stub$Proxy@40ab88d0
--------- beginning of /dev/log/main
W/EglHelper( 295): start() tid=15
W/EglHelper( 295): createContext com.google.android.gles_jni.EGLContextImpl@405810e0 tid=15
W/GLThread( 295): egl createSurface
W/EglHelper( 295): createSurface() tid=15
W/GLThread( 295): onSurfaceCreated
W/GLThread( 295): onSurfaceChanged(480, 762)
W/GLThread( 295): onSurfaceChanged(480, 762)
W/EglHelper( 295): destroySurface() tid=15
W/AudioFlinger( 83): write blocked for 95 msecs, 32 delayed writes, thread 0x2ff28
W/PowerManagerService( 129): Timer 0x7->0x3|0x0
W/dalvikvm( 3018): VFY: unable to resolve static method 633: Landroid/net/TrafficStats;.setThreadStatsTag (I)V
W/dalvikvm( 3018): VFY: unable to resolve virtual method 1046: Landroid/view/View;.isHardwareAccelerated ()Z
W/dalvikvm( 3018): Unable to resolve superclass of Lcom/chartboost/sdk/impl/bf; (230)
W/dalvikvm( 3018): Link of class ‘Lcom/chartboost/sdk/impl/bf;’ failed
E/dalvikvm( 3018): Could not find class ‘com.chartboost.sdk.impl.bf’, referenced from method com.chartboost.sdk.impl.bg.d
W/dalvikvm( 3018): VFY: unable to resolve new-instance 523 (Lcom/chartboost/sdk/impl/bf;) in Lcom/chartboost/sdk/impl/bg;
W/dalvikvm( 3018): VFY: unable to find class referenced in signature (Landroid/support/v4/app/Fragment;)
W/dalvikvm( 3018): VFY: unable to find class referenced in signature (Landroid/support/v4/app/Fragment;)
W/dalvikvm( 3018): VFY: unable to find class referenced in signature (Landroid/support/v4/app/Fragment;)
W/dalvikvm( 3018): VFY: unable to find class referenced in signature (Landroid/support/v4/app/Fragment;)
E/dalvikvm( 3018): Could not find class ‘android.support.v4.app.FragmentActivity’, referenced from method com.google.android.gms.common.GooglePlayServicesUtil.showErrorDialogFragment
W/dalvikvm( 3018): VFY: unable to resolve instanceof 190 (Landroid/support/v4/app/FragmentActivity;) in Lcom/google/android/gms/common/GooglePlayServicesUtil;
E/dalvikvm( 3018): Could not find class ‘android.support.v4.app.FragmentActivity’, referenced from method com.google.android.gms.common.GooglePlayServicesUtil.showErrorDialogFragment
W/dalvikvm( 3018): VFY: unable to resolve check-cast 190 (Landroid/support/v4/app/FragmentActivity;) in Lcom/google/android/gms/common/GooglePlayServicesUtil;
W/dalvikvm( 3018): VFY: unable to resolve virtual method 15: Landroid/app/Activity;.getFragmentManager ()Landroid/app/FragmentManager;
W/dalvikvm( 3018): VFY: unable to find class referenced in signature (Landroid/support/v4/app/Fragment;)
W/dalvikvm( 3018): VFY: unable to resolve direct method 54: Landroid/app/AlertDialog$Builder;. (Landroid/content/Context;I)V
W/dalvikvm( 3018): VFY: unable to find class referenced in signature (Landroid/support/v4/app/Fragment;)
E/dalvikvm( 3018): Could not find class ‘android.app.Notification$Builder’, referenced from method com.google.android.gms.common.GooglePlayServicesUtil.zza
W/dalvikvm( 3018): VFY: unable to resolve new-instance 30 (Landroid/app/Notification$Builder;) in Lcom/google/android/gms/common/GooglePlayServicesUtil;
W/dalvikvm( 3018): VFY: unable to resolve instance field 6
E/dalvikvm( 3018): Could not find class ‘android.app.AppOpsManager’, referenced from method com.google.android.gms.common.GooglePlayServicesUtil.zza
W/dalvikvm( 3018): VFY: unable to resolve check-cast 17 (Landroid/app/AppOpsManager;) in Lcom/google/android/gms/common/GooglePlayServicesUtil;
W/dalvikvm( 3018): VFY: unable to resolve virtual method 312: Landroid/content/pm/PackageManager;.getPackageInstaller ()Landroid/content/pm/PackageInstaller;
E/NativeActivity( 3018): channel ‘4098eff0 com.test.ChartTest/com.unity3d.player.UnityPlayerNativeActivity (client)’ ~ Failed to receive dispatch signal. status=-11
W/PowerManagerService( 129): Timer 0x3->0x3|0x0
E/NativeActivity( 3018): channel ‘4098eff0 com.test.ChartTest/com.unity3d.player.UnityPlayerNativeActivity (client)’ ~ Failed to receive dispatch signal. status=-11
E/NativeActivity( 3018): channel ‘4098eff0 com.test.ChartTest/com.unity3d.player.UnityPlayerNativeActivity (client)’ ~ Failed to receive dispatch signal. status=-11
E/NativeActivity( 3018): channel ‘4098eff0 com.test.ChartTest/com.unity3d.player.UnityPlayerNativeActivity (client)’ ~ Failed to receive dispatch signal. status=-11
E/NativeActivity( 3018): channel ‘4098eff0 com.test.ChartTest/com.unity3d.player.UnityPlayerNativeActivity (client)’ ~ Failed to receive dispatch signal. status=-11
E/CBViewController( 3018): Displaying the impression
E/NativeActivity( 3018): channel ‘4098eff0 com.test.ChartTest/com.unity3d.player.UnityPlayerNativeActivity (client)’ ~ Failed to receive dispatch signal. status=-11
E/NativeActivity( 3018): channel ‘4098eff0 com.test.ChartTest/com.unity3d.player.UnityPlayerNativeActivity (client)’ ~ Failed to receive dispatch signal. status=-11
E/CBViewController( 3018): Dismissing impression
E/CBViewController( 3018): Removing impression
E/CBImpression( 3018): Destroying the view
E/CBImpression( 3018): Destroying the view and view data
E/Browser ( 2911): w:android.webkit.WebView@40612bc0
W/InputManagerService( 129): Starting input on non-focused client com.android.internal.view.IInputMethodClient$Stub$Proxy@4096f058 (uid=10078 pid=3018)
W/BitmapWebView( 2911): mSystemStatusBarHeight = 38
W/BitmapWebView( 2911): set3DSurfaceLayout: displayW/H = 480 800 parent = 480 762
W/EglHelper( 2911): start() tid=38
W/BitmapWebView( 2911): mSystemStatusBarHeight = 38
W/BitmapWebView( 2911): set3DSurfaceLayout: displayW/H = 480 800 parent = 480 762
W/EglHelper( 2911): createContext com.google.android.gles_jni.EGLContextImpl@4073b280 tid=38
W/GLThread( 2911): egl createSurface
W/EglHelper( 2911): createSurface() tid=38
W/GLThread( 2911): onSurfaceCreated
W/GLThread( 2911): onSurfaceChanged(480, 800)
W/BitmapWebView( 2911): fixBlackScreen: visible = false
W/PowerManagerService( 129): Timer 0x3->0x3|0x0
E/SurfaceFlinger( 129): shouldBeSkipped: this=0x533c88 mHideUntilFlipped(delta)=999
W/BitmapWebView( 2911): mSystemStatusBarHeight = 38
W/BitmapWebView( 2911): set3DSurfaceLayout: displayW/H = 480 800 parent = 480 762
E/SurfaceFlinger( 129): shouldBeSkipped: this=0x533c88 mHideUntilFlipped(delta)=982
E/SurfaceFlinger( 129): lockPageFlip: this=0533c88 w= 480 h= 800 mHideUntilFlipped(delta)=965 (now cleared)
E/SurfaceFlinger( 129): Clearing mCopySurfaceFromLayer for 0x58eff8
E/webview ( 2911): Got null mVelocityTracker when mPreventDefault = 0 mDeferTouchProcess = false mTouchMode = 8
W/BitmapWebView( 2911): mSystemStatusBarHeight = 38
W/BitmapWebView( 2911): set3DSurfaceLayout: displayW/H = 480 800 parent = 480 762
E/SurfaceFlinger( 129): lockPageFlip: this=0533c88 w= 480 h= 800 mHideUntilFlipped(delta)=987 (now cleared)
E/SurfaceFlinger( 129): Layer::hushed:nDraw: try to draw a copy of another surface instead
E/SurfaceFlinger( 129): Layer::hushed:nDraw: drawn a copy of another surface instead - GOOD
E/SurfaceFlinger( 129): Clearing mCopySurfaceFromLayer for 0x58eff8
E/SurfaceFlinger( 129): shouldBeSkipped: this=0x533c88 mHideUntilFlipped(delta)=999
W/BitmapWebView( 2911): mSystemStatusBarHeight = 38
W/BitmapWebView( 2911): set3DSurfaceLayout: displayW/H = 480 800 parent = 480 762
E/SurfaceFlinger( 129): lockPageFlip: this=0533c88 w= 480 h= 800 mHideUntilFlipped(delta)=982 (now cleared)
E/SurfaceFlinger( 129): Clearing mCopySurfaceFromLayer for 0x58eff8
E/webview ( 2911): Got null mVelocityTracker when mPreventDefault = 0 mDeferTouchProcess = false mTouchMode = 8
W/BitmapWebView( 2911): mSystemStatusBarHeight = 38
W/BitmapWebView( 2911): set3DSurfaceLayout: displayW/H = 480 800 parent = 480 762
E/SurfaceFlinger( 129): lockPageFlip: this=0533c88 w= 480 h= 800 mHideUntilFlipped(delta)=987 (now cleared)
E/SurfaceFlinger( 129): Layer::hushed:nDraw: try to draw a copy of another surface instead
E/SurfaceFlinger( 129): Layer::hushed:nDraw: drawn a copy of another surface instead - GOOD
E/SurfaceFlinger( 129): Clearing mCopySurfaceFromLayer for 0x58eff8
W/webview ( 2911): Miss a drag as we are waiting for WebCore’s response for touch down.
W/EglHelper( 2911): destroySurface() tid=38
W/EglHelper( 2911): finish() tid=38
E/Surface ( 3018): [Surface] using an invalid surface, identity=532 should be 538
E/Unity ( 3018): [EGL] Unable to acquire context: EGL_BAD_ALLOC: EGL failed to allocate resources for the requested operation.
E/Unity ( 3018):
E/Unity ( 3018): (Filename: ./Runtime/GfxDevice/egl/WindowContextEGL.cpp Line: 205)
E/Unity ( 3018):
E/Surface ( 3018): [Surface] using an invalid surface, identity=532 should be 538
W/AudioFlinger( 83): write blocked for 80 msecs, 33 delayed writes, thread 0x2ff28
W/InputManagerService( 129): Starting input on non-focused client com.android.internal.view.IInputMethodClient$Stub$Proxy@409d49f8 (uid=10006 pid=2911)
W/PowerManagerS

I am facing an issue, when a chartboost ad has playable content. my game crashes