Godot Version
4.4.1 and 4.5.dev4
Question
I created a simple project (showing Godot logo in a 2d sprite) and enabled push notifications for Android export.
Opening the app for the first time via tapping the related push notification works fine, as well as changing focus.
Bringing an already opened app to the foreground via tapping the related push notification causes it to hang.
This happens across multiple devices and SDK versions. If anyone can shed light on this - would be much appreciated.
logcat - I suspect the onDestructor() call towards the end is the culprit:
05-16 14:24:04.001 2164 2179 E ActivityTaskManager: With BAL hardening this activity start would be blocked! [callingPackage: com.domain.app; callingUid: 10455; appSwitchState: 2;
callingUidHasAnyVisibleWindow: false; callingUidProcState: LAST_ACTIVITY; isCallingUidPersistentSystemProcess: false; balAllowedByPiSender:
BackgroundStartPrivileges[allowsBackgroundActivityStarts=true, allowsBackgroundForegroundServiceStarts=true, originatingToken=null]; realCallingPackage: com.android.settings;
realCallingUid: 1000; realCallingUidHasAnyVisibleWindow: true; realCallingUidProcState: PERSISTENT; isRealCallingUidPersistentSystemProcess: true; originatingPendingIntent:
PendingIntentRecord{e650af4 com.domain.app startActivity (allowlist: 1e0762b:+30s0ms/0/NOTIFICATION_SERVICE/NotificationManagerService)}; backgroundStartPrivileges:
BackgroundStartPrivileges[allowsBackgroundActivityStarts=true, allowsBackgroundForegroundServiceStarts=true, originatingToken=android.os.Binder@1e0762b]; intent: Intent {
act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10008000 pkg=com.domain.app cmp=com.domain.app/com.godot.game.GodotApp (has extras) }; callerApp:
null; inVisibleTask: false]
05-16 14:24:04.007 2164 2179 D ActivityTaskManager: [GlobalFreeform] use default Rect(162, 162 - 1242, 1929) scale=0.7 for ActivityRecord{98a81a7 u0
com.domain.app/com.godot.game.GodotApp t3262}
05-16 14:24:04.018 1554 2445 E BufferQueueDebug: 'ActivityRecord{938b119 u0 com.domain.app/com.godot.game.GodotApp#62863](this:0xb400007dc876bf18,id:-1,api:0,p:-1,c:-1) id info
cannot be read from ‘ActivityRecord{938b119 u0 com.domain.app/com.godot.game.GodotApp#62863’
05-16 14:24:04.018 31176 31176 V GodotActivity: Destroying GodotActivity com.godot.game.GodotApp@17be829…
05-16 14:24:04.019 1554 2445 I BufferQueueDebug: 'ActivityRecord{938b119 u0 com.domain.app/com.godot.game.GodotApp#62863](this:0xb400007dc876bf18,id:-1,api:0,p:-1,c:-1)
BufferQueue core=(1554:/system/bin/surfaceflinger)
05-16 14:24:04.020 31176 31201 D GodotRenderer: Destroying Godot Engine
05-16 14:24:04.023 2164 2179 I ActivityTaskManager: START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10008000 pkg=com.domain.app
cmp=com.domain.app/com.godot.game.GodotApp (has extras)} with LAUNCH_SINGLE_INSTANCE_PER_TASK from uid 10455 (realCallingUid=1000) (PendingIntentRecord) (BAL_ALLOW_PENDING_INTENT)
result code=0
05-16 14:24:04.024 2803 2843 V WindowManagerShell: Transition requested: android.os.BinderProxy@8683e31 TransitionRequestInfo { type = 1, triggerTask = TaskInfo{userId=0 taskId=3262
displayId=0 isRunning=true baseIntent=Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10008000 pkg=com.domain.app
cmp=com.domain.app/com.godot.game.GodotApp } baseActivity=ComponentInfo{com.domain.app/com.godot.game.GodotApp}
topActivity=ComponentInfo{com.domain.app/com.godot.game.GodotApp} origActivity=null realActivity=ComponentInfo{com.domain.app/com.godot.game.GodotApp} numActivities=1
lastActiveTime=4889021108 supportsMultiWindow=true supportsGlobalFreeform=true resizeMode=2 isResizeable=true isAppLocked=false canKillAndRestart=false
isShowDecorCaptionWindowRequest=false minWidth=-1 minHeight=-1 defaultMinSize=220 token=WCT{android.window.IWindowContainerToken$Stub$Proxy@9091297} topActivityType=1
pictureInPictureParams=null shouldDockBigOverlays=false launchIntoPipHostTaskId=-1 lastParentTaskIdBeforePip=-1 displayCutoutSafeInsets=Rect(0, 117 - 0, 0)
topActivityInfo=ActivityInfo{4511c84 com.godot.game.GodotApp} launchCookies= positionInParent=Point(0, 0) parentTaskId=-1 isFocused=true isVisible=false isVisibleRequested=false
isSleeping=false topActivityInSizeCompat=false topActivityEligibleForLetterboxEducation= false topActivityLetterboxed= false isFromDoubleTap= false topActivityLetterboxVerticalPosition= -1
topActivityLetterboxHorizontalPosition= -1 topActivityLetterboxWidth=-1 topActivityLetterboxHeight=-1 locusId=null displayAreaFeatureId=1 cameraCompatControlState=hidden}, remoteTransition
= null, displayChange = null, flags = 0 }
05-16 14:24:04.032 2164 2179 I PowerHalWrapper: amsBoostNotify pid:31176,activity:com.godot.game.GodotApp, package:com.domain.app, mProcessCreatePacknull
05-16 14:24:04.033 2164 2179 I mtkpower_client: [Legacy][PowerHal_Wrap_notifyAppState] com.domain.app/com.godot.game.GodotApp pid=31176 state:1
05-16 14:24:04.033 1514 1583 I libPowerHal: [perfNotifyAppState] pack:com.domain.app, act:com.godot.game.GodotApp, state:1, pid:31176, uid:10455, fps:-1
05-16 14:24:04.068 31176 31201 V Godot : OnGodotTerminating
05-16 14:24:04.074 31176 31176 V Godot : OnDestroy: GodotFragment{1527e8} (25c55990-15f6-432d-bc62-c0d1a9063461 id=0x7f070033)
05-16 14:24:04.078 2164 3212 W InputManager-JNI: Input channel object ‘4615652 com.domain.app/com.godot.game.GodotApp (client)’ was disposed without first being removed with the
input manager!
05-16 14:24:04.079 2164 2206 V WindowManager: Sent Transition #5690 createdAt=05-16 14:24:04.005 via request=TransitionRequestInfo { type = 1, triggerTask = TaskInfo{userId=0 taskId=3262
displayId=0 isRunning=true baseIntent=Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10008000 pkg=com.domain.app
cmp=com.domain.app/com.godot.game.GodotApp } baseActivity=ComponentInfo{com.domain.app/com.godot.game.GodotApp}
topActivity=ComponentInfo{com.domain.app/com.godot.game.GodotApp} origActivity=null realActivity=ComponentInfo{com.domain.app/com.godot.game.GodotApp} numActivities=1
lastActiveTime=4889021108 supportsMultiWindow=true supportsGlobalFreeform=true resizeMode=2 isResizeable=true isAppLocked=false canKillAndRestart=true isShowDecorCaptionWindowRequest=false
minWidth=-1 minHeight=-1 defaultMinSize=220 token=WCT{RemoteToken{f89e916 Task{957b9fd #3262 type=standard A=10455:com.domain.app}}} topActivityType=1 pictureInPictureParams=null
shouldDockBigOverlays=false launchIntoPipHostTaskId=-1 lastParentTaskIdBeforePip=-1 displayCutoutSafeInsets=Rect(0, 117 - 0, 0) topActivityInfo=ActivityInfo{6f46bb7
com.godot.game.GodotApp} launchCookies= positionInParent=Point(0, 0) parentTaskId=-1 isFocused=true isVisible=false isVisibleRequested=false isSleeping=false
topActivityInSizeCompat=false topActivityEligibleForLetterboxEducation= false topActivityLetterboxed= false isFromDoubleTap= false topActivityLetterboxVerticalPosition= -1
topActivityLetterboxHorizontalPosition= -1 topActivityLetterboxWidth=-1 topActivityLetterboxHeight=-1 locusId=null displayAreaFeatureId=1 cameraCompatControlState=hidden}, remoteTransition
= null, displayChange = null, flags = 0 }
05-16 14:24:04.086 1554 2459 E BufferQueueDebug: '56f35de ActivityRecordInputSink com.domain.app/com.godot.game.GodotApp#62871](this:0xb400007dc888cf18,id:-1,api:0,p:-1,c:-1) id
info cannot be read from ‘56f35de ActivityRecordInputSink com.domain.app/com.godot.game.GodotApp#62871’
05-16 14:24:04.086 1554 2459 I BufferQueueDebug: '56f35de ActivityRecordInputSink com.domain.app/com.godot.game.GodotApp#62871](this:0xb400007dc888cf18,id:-1,api:0,p:-1,c:-1)
BufferQueue core=(1554:/system/bin/surfaceflinger)
05-16 14:24:04.090 2164 2215 W UsageStatsService: Unexpected activity event reported! (com.domain.app/com.godot.game.GodotApp event : 23 instanceId : 196310770)
05-16 14:24:04.096 31176 31176 D GodotActivity: Starting intent Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10408000 pkg=com.domain.app
cmp=com.domain.app/com.godot.game.GodotApp (has extras) } with parameters null
05-16 14:24:04.097 31176 31176 V GodotActivity: Creating new Godot fragment instance.
05-16 14:24:04.103 1554 1554 I BufferQueueDebug: 'SurfaceView[com.domain.app/com.godot.game.GodotApp]#62837](this:0xb400007dc883a718,id:-1,api:0,p:-1,c:1554) onDestructor()
05-16 14:24:04.104 1554 1554 I BufferQueueDebug: 'SurfaceView’com.domain.app/com.godot.game.GodotApp](BLAST)#62838](this:0xb400007dc883cf18,id:-1,api:0,p:-1,c:1554) onDestructor()
05-16 14:24:04.105 1554 1554 I BufferQueueDebug: 'Background for SurfaceView[com.domain.app/com.godot.game.GodotApp]#62839](this:0xb400007dc8858718,id:-1,api:0,p:-1,c:1554)
onDestructor()
05-16 14:24:04.112 31176 31176 V Godot : OnCreate: GodotFragment{8008540} (3088cda8-d9df-4670-be46-9b0778fb81da id=0x7f070033)
05-16 14:24:04.113 31176 31176 V Godot : Initializing Godot plugin registry
05-16 14:24:04.113 31176 31176 V Godot : OnInitNativeLayer: GodotFragment{8008540} (3088cda8-d9df-4670-be46-9b0778fb81da id=0x7f070033)
05-16 14:24:04.114 31176 31176 V Godot : Godot native layer initialization completed: true
05-16 14:24:04.114 1554 1554 I BufferQueueDebug: '4615652 com.domain.app/com.godot.game.GodotApp#62832](this:0xb400007dc8750718,id:-1,api:0,p:-1,c:1554) onDestructor()
05-16 14:24:04.114 1554 1554 I BufferQueueDebug: 'ActivityRecord{98a81a7 u0 com.domain.app/com.godot.game.GodotApp t3262}#62823](this:0xb400007dc875c718,id:-1,api:0,p:-1,c:1554)
onDestructor()
05-16 14:24:04.114 1554 1554 I BufferQueueDebug: '1a44654 ActivityRecordInputSink com.domain.app/com.godot.game.GodotApp#62831](this:0xb400007dc881e718,id:-1,api:0,p:-1,c:1554)
onDestructor()
05-16 14:24:04.116 31176 31176 E godot : ERROR: Parameter “t” is null.
05-16 14:24:04.116 31176 31176 E godot : at: register_class (./core/object/class_db.h:232)
05-16 14:24:04.116 31176 31176 E godot : ERROR: Parameter “t” is null.
05-16 14:24:04.116 31176 31176 E godot : at: register_abstract_class (./core/object/class_db.h:247)
05-16 14:24:04.116 31176 31176 E godot : ERROR: Parameter “t” is null.
05-16 14:24:04.116 31176 31176 E godot : at: register_abstract_class (./core/object/class_db.h:247)
.
.
.
similar errors from here on out