AdMob Extension - open source now

Yes I do.

I also get mysterious crashes now in the Admob extension on iOS. When debugging they seem to appear when one interstitial has failed to load and trying to load a second.

Using Console on Mac shows no obvious error message, even when bundling as debug with test ads (the first line is the last print from the game):

default	15:25:34.419826+0100	MyGame	DEBUG:SCRIPT: Interstitial opened
default	15:25:34.420372+0100	SpringBoard	[application<com.my.game>:21355] Now flagged as pending exit for reason: workspace client connection invalidated
default	15:25:34.420414+0100	SpringBoard	Scene <FBScene: 0x281bb3b40; sceneID: sceneID:com.my.game-default; valid: YES> is setting idleTimerDisabled to: YES
default	15:25:34.421581+0100	SpringBoard	[FBInterfaceOrientationServiceServer] Removing client application<com.my.game>:21355.
default	15:25:34.422111+0100	SpringBoard	Removed client for observing orientation events: <FBServiceFacilityServerClientHandle: 0x2820b86f0; com.apple.frontboardservices.orientation-observer; application<com.my.game>:21355: remote>
default	15:25:34.424597+0100	mediaserverd	AudioSession_SubServer.cpp:107:ClientDied: { "action":"client_died", "session":{"ID":"0x142eeeb","PID":21355,"name":"MyGame"}, "details":null }
default	15:25:34.424736+0100	mediaserverd	MEDeviceStreamClient.cpp:428:RemoveRunningClient: AQME device AQDefaultDevice: client stopping: <RemoteIOClient@0x131023600(@0x131023808); output; sid:0x142eeeb, MyGame(21355), 'prim'>; running count now 0
default	15:25:34.424830+0100	mediaserverd	-CMSessionMgr- cmsSetIsPlaying: CMSession: 'sid:0x142eeeb, MyGame(21355), 'prim'' with [AmbientSound/Default] [Mixable] [System Audio] stopping playing. Ringer switch state: OFF. Silent muted: true.
default	15:25:34.424875+0100	mediaserverd	CAReportingClient.mm:470:-[CAReportingClient sendMessage:category:type:reporters:]: message {
    MXSessionVolume = 0;
    MXSessionVolumeCategory = "Audio/Video";
    MXSessionVolumeOperationProcess = "com.my.game";
    MXSessionVolumeOperationTime = 1274109;
    MXSessionVolumePlayingState = 0;
}: (
    21964462751895
)
default	15:25:34.424969+0100	backboardd	Connection removed: IOHIDEventSystemConnection uuid:170D7E42-320F-4557-8C96-D6631FED780F pid:21355 process:MyGame type:Passive entitlements:0x0 caller:BackBoardServices: <redacted> + 368 attributes:{
    HighFrequency = 1;
    bundleID = "com.my.game";
    pid = 21355;
} state:0x1 events:0 mask:0x0
default	15:25:34.425518+0100	appstored	StoreKitServiceListener: Connection to MyGame invalidated
default	15:25:34.425858+0100	mediaserverd	-CMSessionMgr- cmsSetIsActive: CMSession: 'sid:0x142eeeb, MyGame(21355), 'prim'' with [AmbientSound/Default] [Mixable] [System Audio] siriEndpointID: (null) going inactive 0 0
default	15:25:34.426028+0100	mediaserverd	CAReportingClient.mm:470:-[CAReportingClient sendMessage:category:type:reporters:]: message {
    MXSessionVolume = 0;
    MXSessionVolumeOperationProcess = "com.my.game";
    MXSessionVolumeOperationTime = 1274109;
    MXSessionVolumePlayingState = 0;
}: (
    21964462751895
)
default	15:25:34.426219+0100	mediaserverd	-CMSUtilities- CMSUtility_SendSessionStateAndVolumeReportToAudioToolBox: CMSession: Stopping reporter for session : sid:0x142eeeb, MyGame(21355), 'prim', reporter id = 21964462751895
default	15:25:34.426573+0100	mDNSResponder	[R36692] DNSServiceCreateConnection STOP PID[21355](MyGame)
default	15:25:34.426954+0100	runningboardd	XPC connection invalidated: [application<com.my.game>:21355]
default	15:25:34.427201+0100	runningboardd	Invalidating assertion 29-5114-39693 (target:application<com.my.game>) from originator 5114
error	15:25:34.427999+0100	runningboardd	RBSStateCapture remove item called for untracked item <RBProcessMonitorObserver: 0x102d22be0; <RBProcess: 0x10582f9b0; 21355; identity: application<com.my.game>>; configCount: 0>
default	15:25:34.428073+0100	runningboardd	[application<com.my.game>:21355] Death sentinel fired!
default	15:25:34.449738+0100	symptomsd	defusing ticker tickerFatal having seen progress by flow for com.my.game, rxbytes 33382 duration 13.163 seconds started at time: Wed May 27 15:25:21 2020
default	15:25:34.450545+0100	symptomsd	defusing ticker tickerFatal having seen progress by flow for com.my.game, rxbytes 7374 duration 12.862 seconds started at time: Wed May 27 15:25:21 2020
default	15:25:34.451381+0100	symptomsd	defusing ticker tickerFatal having seen progress by flow for com.my.game, rxbytes 5268 duration 12.278 seconds started at time: Wed May 27 15:25:22 2020
default	15:25:34.452436+0100	symptomsd	defusing ticker tickerFatal having seen progress by flow for com.my.game, rxbytes 5970 duration 13.302 seconds started at time: Wed May 27 15:25:21 2020
default	15:25:34.453027+0100	symptomsd	defusing ticker tickerFatal having seen progress by flow for com.my.game, rxbytes 6139 duration 11.514 seconds started at time: Wed May 27 15:25:22 2020
default	15:25:34.453974+0100	symptomsd	defusing ticker tickerFatal having seen progress by flow for com.my.game, rxbytes 6139 duration 11.605 seconds started at time: Wed May 27 15:25:22 2020
default	15:25:34.454786+0100	symptomsd	defusing ticker tickerFatal having seen progress by flow for com.my.game, rxbytes 11251 duration 11.608 seconds started at time: Wed May 27 15:25:22 2020
default	15:25:34.456012+0100	symptomsd	defusing ticker tickerFatal having seen progress by flow for com.my.game, rxbytes 41655 duration 13.258 seconds started at time: Wed May 27 15:25:21 2020
default	15:25:34.456896+0100	symptomsd	defusing ticker tickerFatal having seen progress by flow for com.my.game, rxbytes 8976 duration 0.118 seconds started at time: Wed May 27 15:25:34 2020
default	15:25:34.527646+0100	runningboardd	Removing process: [application<com.my.game>:21355]
default	15:25:34.528292+0100	runningboardd	[application<com.my.game>:21355] Deleting job: UIKitApplication:com.my.game[f7f4][rb-legacy]
default	15:25:34.528369+0100	runningboardd	Removing job: <RBLaunchdJob: 0x105828130; pid=21355 UIKitApplication:com.my.game[f7f4][rb-legacy]>
default	15:25:34.528911+0100	runningboardd	Removed job with label: UIKitApplication:com.my.game[f7f4][rb-legacy]
default	15:25:34.529033+0100	runningboardd	Removing assertions for terminated process: [application<com.my.game>:21355]
default	15:25:34.529495+0100	runningboardd	Removed last relative-start-date-defining assertion for process application<com.my.game>
default	15:25:34.536313+0100	runningboardd	Calculated state for application<com.my.game>: none (role: None)
default	15:25:34.539709+0100	powerd	Process runningboardd.29 Released SystemIsActive "application<com.my.game>29-5114-39693:MediaExperience.21355."com.my.game"."AmbientSound".isPlayingProcessAssertion(MediaPlayback)" age:00:00:01  id:51539649385 [System: PrevIdle SysAct]
default	15:25:34.574716+0100	wifid	[WiFiTrafficFlowMonitor]: com.apple.WebKit.WebContent, com.my.game
default	15:25:34.580195+0100	runningboardd	Calculated state for application<com.my.game>: none (role: None)
error	15:25:34.581281+0100	runningboardd	RBSStateCapture remove item called for untracked item 29-5114-39693 (target:application<com.my.game>)
default	15:25:34.581783+0100	SpringBoard	[application<com.my.game>:21355]* Process exited: <RBSProcessExitContext; voluntary>.
default	15:25:34.582309+0100	SpringBoard	[application<com.my.game>:21355]* Setting process task state to: Not Running
default	15:25:34.582357+0100	SpringBoard	[application<com.my.game>:21355]* Setting process visibility to: Unknown
default	15:25:34.582782+0100	SpringBoard	Removing: <FBApplicationProcess: 0x11228fec0; application<com.my.game>:21355>
default	15:25:34.582840+0100	SpringBoard	Process exited: <FBApplicationProcess: 0x11228fec0; application<com.my.game>:21355> -> <RBSProcessExitContext; voluntary>
default	15:25:34.584269+0100	SpringBoard	Application process state changed for com.my.game: (null)
default	15:25:34.589212+0100	mediaserverd	-CMSessionMgr- CMSessionMgrHandleApplicationStateChange: CMSession: Client com.my.game with pid '21355' is now Terminated. Background entitlement: NO ActiveLongFormVideoSession: NO WhitelistedLongFormVideoApp NO
default	15:25:34.599911+0100	SpringBoard	No longer tracking: <FBScene: 0x281bb3b40; sceneID: sceneID:com.my.game-default; valid: YES>
error	15:25:34.600701+0100	SpringBoard	Ignoring state for untracked process [application<com.my.game>:21355]*: <RBSProcessState: 0x280a36160; task: none>
default	15:25:34.601674+0100	runningboardd	Acquiring assertion targeting 21355 from originator [daemon<com.apple.SpringBoard>:58] with description <RBSAssertionDescriptor; FBSceneSnapshotAction:sceneID:com.my.game-default; ID: 29-58-39695; target: 21355> attributes = {
    <RBSRunningReasonAttribute: 0x102d5d910; runningReason: 17>;
    <RBSGPUAccessGrant: 0x102d5d960>;
    <RBSCPUAccessGrant: 0x102d1c130; role: NonUserInteractive>;
    <RBSJetsamPriorityGrant: 0x102d670e0; priority: Background>;
    <RBSPreventIdleSleepGrant: 0x102d7da00>;
}
default	15:25:34.668572+0100	locationd	{"msg":"#CLIUA Marking change", "clientKey":"com.my.game", "reason":"Process state from RunningBoard", "assertionLevel":4, "coming":0}
default	15:25:34.690759+0100	symptomsd	com.my.game: Foreground: false
default	15:25:34.690843+0100	symptomsd	call _saveAndUnloadSelectState on com.my.game exiting foreground state
default	15:30:42.850635+0100	SpringBoard	Adding: <FBApplicationProcess: 0x1122a58d0; application<com.my.game>:-1>
default	15:30:42.850728+0100	SpringBoard	Bootstrapping application<com.my.game> with intent foreground-interactive
default	15:30:42.855894+0100	runningboardd	Acquiring assertion targeting application<com.my.game> from originator [daemon<com.apple.SpringBoard>:58] with description <RBSAssertionDescriptor; FBApplicationProcess; ID: 29-58-39696; target: application<com.my.game>> attributes = {
    <RBSRunningReasonAttribute: 0x1058244d0; runningReason: 10000>;
    <RBSPreventIdleSleepGrant: 0x105850f00>;
    <RBSDefineRelativeStartTimeGrant: 0x105814800>;
    <RBSGPUAccessGrant: 0x1058226b0>;
    <RBSCPUAccessGrant: 0x10582fad0; role: UserInteractiveNonFocal>;
    <RBSJetsamPriorityGrant: 0x10584beb0; priority: Foreground>;
    <RBSResistTerminationGrant: 0x105827790; terminationResistance: Interactive>;
    <RBSEndowmentGrant: 0x1058128e0; namespace: com.apple.frontboard.visibility>;
}
default	15:30:42.856123+0100	runningboardd	Assertion 29-58-39696 (target:application<com.my.game>) will be created as active
default	15:30:42.856251+0100	runningboardd	Executing launch request for application<com.my.game> (FBApplicationProcess)
default	15:30:42.856561+0100	runningboardd	Submitting job: <RBLaunchdJob: 0x10582a590; UIKitApplication:com.my.game[81f0][rb-legacy]>
default	15:30:42.857182+0100	runningboardd	Started job UIKitApplication:com.my.game[81f0][rb-legacy]
default	15:30:42.871838+0100	runningboardd	[application<com.my.game>:21391] This process will be managed.
default	15:30:42.872863+0100	runningboardd	Now tracking process: [application<com.my.game>:21391]
default	15:30:42.872953+0100	runningboardd	Calculated state for application<com.my.game>: running-active (role: UserInteractiveNonFocal)
default	15:30:42.873003+0100	SpringBoard	[application<com.my.game>:21391] Bootstrap success!
default	15:30:42.874681+0100	SpringBoard	[application<com.my.game>:21391] Setting process task state to: Running
default	15:30:42.879455+0100	runningboardd	Finished acquiring assertion 29-58-39696 (target:application<com.my.game>)
default	15:30:42.883080+0100	runningboardd	Acquiring assertion targeting application<com.my.game>(com.apple.frontboard.workspace) from originator [daemon<com.apple.SpringBoard>:58] with description <RBSAssertionDescriptor; "injecting "com.apple.frontboard"-"com.apple.frontboard.workspace-service" to 21391<com.apple.frontboard.workspace>"; ID: 29-58-39697; target: 21391<com.apple.frontboard.workspace>> attributes = {
    <RBSHereditaryGrant: 0x10384d380> {
        endowmentNamespace = com.apple.boardservices.endpoint-injection;
        hasEncodedEndowment = YES;
    };
}
default	15:30:42.883130+0100	runningboardd	Assertion 29-58-39697 (target:application<com.my.game>(com.apple.frontboard.workspace)) will be created as active
default	15:30:42.883322+0100	powerd	Process runningboardd.29 Created SystemIsActive "application<com.my.game>29-58-39696:FBApplicationProcess" age:00:00:00  id:51539649406 [System: PrevIdle SysAct]
default	15:30:42.883987+0100	runningboardd	Calculated state for application<com.my.game>: running-active (role: UserInteractiveNonFocal)
default	15:30:42.884232+0100	runningboardd	[application<com.my.game>:21391] Set jetsam priority to 10 [0] flag[1]
default	15:30:42.884481+0100	runningboardd	[application<com.my.game>:21391] Resuming task.
default	15:30:42.884561+0100	runningboardd	[application<com.my.game>:21391] Set darwin role to: UserInteractiveNonFocal
default	15:30:42.884640+0100	runningboardd	[application<com.my.game>:21391] Set GPU priority to "allow"
default	15:30:42.884680+0100	runningboardd	Finished acquiring assertion 29-58-39697 (target:application<com.my.game>(com.apple.frontboard.workspace))
default	15:30:42.891973+0100	mediaserverd	-CMSessionMgr- CMSessionMgrHandleApplicationStateChange: CMSession: Client com.my.game with pid '21391' is now Foreground Running. Background entitlement: NO ActiveLongFormVideoSession: NO WhitelistedLongFormVideoApp NO
default	15:30:42.892051+0100	mediaserverd	-CMSessionMgr- CMSessionMgrHandleApplicationStateChange: CMSession: Sending EndInterruption to com.my.game with pid '21391' because client moved to ForegroundRunning and is not allowed to play in the background
default	15:30:42.900106+0100	runningboardd	Acquiring assertion targeting application<com.my.game> from originator [daemon<com.apple.SpringBoard>:58] with description <RBSAssertionDescriptor; "Subordinate Process"; ID: 29-58-39699; target: 21391> attributes = {
    <RBSSubordinateProcessAttribute: 0x105850920>;
}
default	15:30:42.900192+0100	runningboardd	Assertion 29-58-39699 (target:application<com.my.game>) will be created as active
default	15:30:42.900881+0100	SpringBoard	Now tracking: <FBScene: 0x281b8c240; sceneID: sceneID:com.my.game-default; valid: YES>
default	15:30:42.900960+0100	SpringBoard	[sceneID:com.my.game-default] Setting deactivation reasons to: 'systemAnimation' for reason: scene settings update - settings are eligible for deactivation reasons.
default	15:30:42.901985+0100	runningboardd	Calculated state for application<com.my.game>: running-active (role: UserInteractiveNonFocal)
default	15:30:42.902364+0100	MyGame	Initializing connection
default	15:30:42.902616+0100	MyGame	Removing all cached process handles
default	15:30:42.902894+0100	MyGame	Sending handshake request attempt #1 to server
default	15:30:42.902977+0100	runningboardd	Finished acquiring assertion 29-58-39699 (target:application<com.my.game>)
default	15:30:42.903017+0100	MyGame	Creating connection to com.apple.runningboard
default	15:30:42.906290+0100	MyGame	Handshake succeeded
default	15:30:42.906328+0100	MyGame	Identity resolved as application<com.my.game>
default	15:30:42.915744+0100	SpringBoard	Application process state changed for com.my.game: <SBApplicationProcessState: 0x282883840; pid: 21391; taskState: Running; visibility: Unknown>
default	15:30:42.917193+0100	locationd	{"msg":"#CLIUA Marking change", "clientKey":"com.my.game", "reason":"Process state from RunningBoard", "assertionLevel":4, "coming":1}
default	15:30:42.943473+0100	symptomsd	com.my.game: Foreground: true
default	15:30:42.947062+0100	MyGame	INFO:DLIB: Log server started on port 52818
default	15:30:42.948229+0100	backboardd	Connection added: IOHIDEventSystemConnection uuid:386AAB50-C0AB-46F7-BEEC-EC3AF442C2A6 pid:21391 process:MyGame type:Passive entitlements:0x0 caller:BackBoardServices: <redacted> + 368 attributes:{
    HighFrequency = 1;
    bundleID = "com.my.game";
    pid = 21391;
} state:0x0 events:0 mask:0x0
default	15:30:42.948357+0100	MyGame	FBSWorkspace connecting to endpoint : <private>
default	15:30:42.948440+0100	MyGame	FBSWorkspace registering source: <private>
default	15:30:42.948523+0100	MyGame	FBSWorkspace connected to endpoint : <private>
default	15:30:42.948565+0100	MyGame	Added observer for process assertions expiration warning: <_RBSExpirationWarningAssertion: 0x280dacdc0; identifier: com.apple.runningboardservices.processExpirationWarningForHandle; reason: observation; valid: YES>
default	15:30:42.948760+0100	SpringBoard	[application<com.my.game>:21391] Launch complete.
default	15:30:42.949575+0100	SpringBoard	[sceneID:com.my.game-default] Scene lifecycle state did change: Foreground
default	15:30:42.949620+0100	SpringBoard	[sceneID:com.my.game-default] Sending scene action [Logical Activate][0x3c22] through WorkspaceServer: 0x283bb8e40
default	15:30:42.949666+0100	SpringBoard	[sceneID:com.my.game-default] Scene activity state did change: ForegroundActive.
default	15:30:42.950524+0100	runningboardd	Acquiring assertion targeting application<com.my.game> from originator [daemon<com.apple.SpringBoard>:58] with description <RBSAssertionDescriptor; "FBScene (ForegroundActive) <sceneID:com.my.game-default>"; ID: 29-58-39700; target: 21391> attributes = {
    <RBSRunningReasonAttribute: 0x103984980; runningReason: 10000>;
    <RBSDefineRelativeStartTimeGrant: 0x1039679e0>;
    <RBSGPUAccessGrant: 0x1039546d0>;
    <RBSCPUAccessGrant: 0x10391dfd0; role: UserInteractiveNonFocal>;
    <RBSJetsamPriorityGrant: 0x10397f500; priority: Foreground>;
    <RBSResistTerminationGrant: 0x10396e810; terminationResistance: Interactive>;
    <RBSEndowmentGrant: 0x103912790; namespace: com.apple.frontboard.visibility>;
    <RBSAcquisitionCompletionAttribute: 0x103955c80; policy: 1>;
}
default	15:30:42.950615+0100	runningboardd	Assertion 29-58-39700 (target:application<com.my.game>) will be created as active
default	15:30:42.951124+0100	runningboardd	Calculated state for application<com.my.game>: running-active (role: UserInteractiveNonFocal)
default	15:30:42.951205+0100	MyGame	Retrieving resting unlock: 0
default	15:30:42.951447+0100	runningboardd	Finished acquiring assertion 29-58-39700 (target:application<com.my.game>)
default	15:30:42.951567+0100	MyGame	Registering for test daemon availability notify post.
default	15:30:42.951690+0100	SpringBoard	[application<com.my.game>:21391] Setting process visibility to: Foreground
default	15:30:42.951786+0100	SpringBoard	change foreground process from list:<FBApplicationProcess: 0x1122a58d0; application<com.my.game>:21391>
default	15:30:42.952558+0100	SpringBoard	[sceneID:com.my.game-default] Sending scene action [SceneLifecycleEventOnly][0x325c] through WorkspaceServer: 0x283bb8e40
default	15:30:42.953165+0100	SpringBoard	[sceneID:com.my.game-default] Now connected: sending pended scene actions.
default	15:30:42.953255+0100	SpringBoard	didSelectKeyboardFocusProcess:<FBApplicationProcess: 0x1122a58d0; application<com.my.game>:21391> token:(null)
default	15:30:42.953933+0100	SpringBoard	Application process state changed for com.my.game: <SBApplicationProcessState: 0x2828f3760; pid: 21391; taskState: Running; visibility: Foreground>
default	15:30:42.954386+0100	MyGame	notify_get_state check indicated test daemon not ready.
default	15:30:42.956439+0100	SpringBoard	Application process state changed for com.my.game: <SBApplicationProcessState: 0x2828f3980; pid: 21391; taskState: Running; visibility: Foreground>
default	15:30:42.956628+0100	MyGame	FBSWorkspace already connected to endpoint : <private>
default	15:30:42.995274+0100	MyGame	kExcludedFromBackupXattrName set on path: <private>
default	15:30:42.996887+0100	MyGame	kExcludedFromBackupXattrName set on path: <private>
default	15:30:42.997678+0100	MyGame	Got system group container path from MCM for systemgroup.com.apple.configurationprofiles: /private/var/containers/Shared/SystemGroup/systemgroup.com.apple.configurationprofiles
default	15:30:43.999500+0100	SpringBoard	[sceneID:com.my.game-default] Scene action [Logical Activate][0x3c22] completed with success: 1
default	15:30:43.004693+0100	runningboardd	Acquiring assertion targeting application<com.my.game>(UIScene:com.apple.frontboard.systemappservices::sceneID%3Acom.my.game-default) from originator [daemon<com.apple.SpringBoard>:58] with description <RBSAssertionDescriptor; "injecting inherited from "UIScene:com.apple.frontboard.systemappservices::com.apple.springboard" to 21391<UIScene:com.apple.frontboard.systemappservices::sceneID%3Acom.my.game-default>"; ID: 29-58-39701; target: 21391<UIScene:com.apple.frontboard.systemappservices::sceneID%3Acom.my.game-default>> attributes = {
    <RBSHereditaryGrant: 0x10397e5d0> {
        endowmentNamespace = com.apple.boardservices.endpoint-injection;
        sourceEnvironment = UIScene:com.apple.frontboard.systemappservices::com.apple.springboard;
    };
    <RBSHereditaryGrant: 0x103932f90> {
        endowmentNamespace = com.apple.frontboard.visibility;
        sourceEnvironment = UIScene:com.apple.frontboard.systemappservices::com.apple.springboard;
    };
}
default	15:30:43.004822+0100	runningboardd	Assertion 29-58-39701 (target:application<com.my.game>(UIScene:com.apple.frontboard.systemappservices::sceneID%3Acom.my.game-default)) will be created as active
default	15:30:43.018378+0100	SpringBoard	[sceneID:com.my.game-default] Sending scene action [SceneLifecycleEventOnly][0xbceb] through WorkspaceServer: 0x283bb8e40
default	15:30:43.020823+0100	runningboardd	Finished acquiring assertion 29-58-39701 (target:application<com.my.game>(UIScene:com.apple.frontboard.systemappservices::sceneID%3Acom.my.game-default))
default	15:30:43.020908+0100	runningboardd	Calculated state for application<com.my.game>: running-active (role: UserInteractiveNonFocal)
default	15:30:43.024383+0100	runningboardd	Invalidating assertion 29-58-39701 (target:application<com.my.game>(UIScene:com.apple.frontboard.systemappservices::sceneID%3Acom.my.game-default)) from originator 58
default	15:30:43.026376+0100	runningboardd	Acquiring assertion targeting application<com.my.game>(UIScene:com.apple.frontboard.systemappservices::sceneID%3Acom.my.game-default) from originator [daemon<com.apple.SpringBoard>:58] with description <RBSAssertionDescriptor; "injecting inherited from "UIScene:com.apple.frontboard.systemappservices::com.apple.springboard" to 21391<UIScene:com.apple.frontboard.systemappservices::sceneID%3Acom.my.game-default>"; ID: 29-58-39702; target: 21391<UIScene:com.apple.frontboard.systemappservices::sceneID%3Acom.my.game-default>> attributes = {
    <RBSHereditaryGrant: 0x102c2b610> {
        endowmentNamespace = com.apple.boardservices.endpoint-injection;
        sourceEnvironment = UIScene:com.apple.frontboard.systemappservices::com.apple.springboard;
    };
    <RBSHereditaryGrant: 0x102c2e350> {
        endowmentNamespace = com.apple.frontboard.visibility;
        sourceEnvironment = UIScene:com.apple.frontboard.systemappservices::com.apple.springboard;
    };
}
default	15:30:43.026463+0100	runningboardd	Assertion 29-58-39702 (target:application<com.my.game>(UIScene:com.apple.frontboard.systemappservices::sceneID%3Acom.my.game-default)) will be created as active
default	15:30:43.034476+0100	MyGame	networkd_settings_read_from_file initialized networkd settings by reading plist directly
default	15:30:43.035204+0100	runningboardd	Finished acquiring assertion 29-58-39702 (target:application<com.my.game>(UIScene:com.apple.frontboard.systemappservices::sceneID%3Acom.my.game-default))
default	15:30:43.037221+0100	MyGame	nw_path_evaluator_start [FA8E632B-5925-4F63-94E0-56521821A33B Hostname#b7b4648d:0 generic, indefinite]
	path: satisfied (Path is satisfied), interface: en0, ipv4, dns
default	15:30:43.037504+0100	mDNSResponder	[R36699] DNSServiceCreateConnection START PID[21391](MyGame)
default	15:30:43.040196+0100	mDNSResponder	[R36700] DNSServiceGetAddrInfo(C000D000, 0, 0, <private>) START PID[21391](MyGame)
default	15:30:43.048459+0100	MyGame	Found 5 implemented methods in 1 delegates
default	15:30:43.048528+0100	MyGame	Sending selectors to server: <private>
default	15:30:43.059125+0100	MyGame	 - <AppMeasurement>[I-ACS025026] Deferring to Firebase for event data collection
default	15:30:43.060255+0100	wifid	[WiFiTrafficFlowMonitor]: com.my.game
default	15:30:43.060295+0100	MyGame	kExcludedFromBackupXattrName set on path: <private>
default	15:30:43.061247+0100	MyGame	INFO:ENGINE: Engine service started on port 8001
default	15:30:43.061290+0100	MyGame	INFO:ENGINE: Defold Engine 1.2.169 (4674306)
default	15:30:43.061331+0100	MyGame	INFO:ENGINE: Loading data from: dmanif:/private/var/containers/Bundle/Application/B80331C7-3493-4B0C-B150-CAC909C2E5D1/My Game.app/game.dmanifest
default	15:30:43.062381+0100	appstored	<StoreKitClient: 0x100d895b0>: Initializing client from bundle URL: file:///private/var/containers/Bundle/Application/B80331C7-3493-4B0C-B150-CAC909C2E5D1/My Game.app/
default	15:30:43.062989+0100	itunesstored	Updating configuration of monitor <RBSProcessMonitorConfiguration: 0x102a829e0; id: M149-1; qos: 17> {
    predicates = {
        <RBSProcessPredicate: 0x102ae0d70> {
            predicate = <RBSCompoundPredicate; <RBSCompoundPredicate; <RBSProcessEUIDPredicate; 501>; <RBSProcessBKSLegacyPredicate: 0x102c55980>>; <RBSProcessBundleIdentifierPredicate; com.my.game>>;
        };
        <RBSProcessPredicate: 0x1098dbc40> {
            predicate = <RBSCompoundPredicate; <RBSProcessBundleIdentifierPredicate; com.WinkelGames.JumpDEV>; <RBSCompoundPredicate; <RBSProcessEUIDPredicate; 501>; <RBSProcessBKSLegacyPredicate: 0x102c55980>>>;
        };
        <RBSProcessPredicate: 0x1098ffba0> {
            predicate = <RBSCompoundPredicate; <RBSProcessBundleIdentifierPredicate; com.apple.TestFlight>; <RBSCompoundPredicate; <RBSProcessEUIDPredicate; 501>; <RBSProcessBKSLegacyPredicate: 0x102c55980>>>;
        };
    }
    descriptor = <RBSProcessStateDescriptor: 0x102ae9df0; values: 11> {
        namespaces = {
            com.a<…>
default	15:30:43.066363+0100	MyGame	Added delegate SoundApplicationDelegate
default	15:30:43.066492+0100	MyGame	Call host has no calls

Did anything change in the extension?

Edipt: Trying and failing not to sound like a broken record, I think this was another Lua error in the callback causing the crash. :man_facepalming:

This extension doesn’t gel with my “trial and error” approach to coding.

1 Like

Possibly code like this is necessary to add so errors in the callback don’t cause crashes

3 Likes

Hi @sergey.lerg ,

Firstly, a big thank you for the wonderful library you’ve provided.

But I need to check on the 1% ads that goes by your account.

Are these ads (the 1%) set to a certain rating? (Like “G” or “PG”).

I recently had an app update rejected by Google as the ads shown did not match with my app’s rating. I have now set all my ads for that game to be “G”, and hope no hiccups happen on Google’s testing.

My concern is when Google is testing and it so happens your 1% shows up, I do hope it is also in the “G” rating category.

Could you please advice on this.

Thanks a bunch!

1 Like

Ok, nevermind this, I just saw there was “max_ad_content_rating” for the load params which should filter this out.

Thank you.

1 Like

It uses the same rating, thanks!

1 Like

MAJOR UPDATE

I’ve removed the impression share from the extension and replaced it with Patreon support.

Plus bug fixes.

Details are in the video

If you want the old version with the impression share, you can still use it with this URL
https://github.com/Lerg/extension-admob/archive/legacy.zip

Reworked documentation into a single page.
https://docs.spiralcodestudio.com/extension/admob/

10 Likes

Have you applied to Github Sponsors? It would be a better option if you can get in!

2 Likes

Not available in Russia yet.

1 Like

Maybe that has changed? I see people with location set to Russia who have sponsor pages.

Maybe if I could open a bank account abroad, but that’s not easy.

Russia isn’t supported yet. They must have something set up in one of the 34 supported countries then: https://github.com/sponsors

Hi, really love your admob extension, super easy to setup!
I’m not really used to patreon support mechanics, so i will be glad if you can clarify how it works:
How many months do i need to subscribe in order to have access to your extension?
What happens if i stop supporting you through your patreon? do i still have access to admob extension package?

Thank you !

2 Likes

Hi @Ceonello. Thank you, I am really glad you like it!

  • You get access to the extension right away, it’s usually within several hours as I send the keys manually at the moment.
  • When you stop supporting me, the key gets revoked and you no longer can use the extension to make builds, however all the already built games continue to work normally.

Please ask if you have any other questions.

2 Likes

Hello, just found this extension and would love to use it in the future when Im ready to release my game but Patreon is not my preferred option. Never used it, new account to keep track of, dont really know how it works, etc…

Can you clarify this:

I checked the video and I think you said source is included. Do you mean Im only allowed to use while Im a Patreon supporter or the quote is meant that I only have access to the up-to-date version trought the link while Im a supporter but I can do whatever I want with the version I had when I was subscribed to Patreon?

Question in short: Do I need continous support to use or can I “pay once” and maintain it myself? If I cant maintain it I can “buy” updates for the required Patreon price (which is around $10 where I live (inc. VAT and fees))?

Dont get me wrong Im not against paying for it. Its just different if I need to buy it once and own it or subscribe for it every time I update my app. Would be much easier choice to subscribe(=buy) it on Patreon if its an “own that version” deal.

Hi! Looking forward to it!

Patreon is a well regarded platform to support creators. At the end of each month you pay selected creators.

You need the continuous support to make builds with the extension, if you copy the extension for yourself, stop supporting me and keep using what you’ve downloaded that would be pirating.

I’d be happy to provide a single purchase option, but with the current amount of people who wants it, it’s not viable. The extension price would have to be like $500.

2 Likes

Thank you for the clarification!

2 Likes

Hey!
i really love your admob extension!!
I am interested in one question: will it be available in other languages? (German?)

Hi! Thanks. No, it’s English only.

1 Like

I’ve made the extension Open Source with no requirement to support and no fees. You are still welcome to support.

21 Likes