IronSource SDK native extension

Great news, monetisation here I come $$$ :grinning:

Does that mean I need to run my own build server for this patch to be taken into account?

Or is it already deployed on Defold official build server? I don’t see how I can see which version is on the Defold servers. A bit confused about how that works under the hood.

The beta (stage) server is located at https://build-stage.defold.com/, and the sha1 there is the commit sha of the beta branch in the extender repo. Same goes for https://build.defold.com/

The fix has not yet been merged to extender/beta yet.

OK thanks for the explanation.
Any estimated time on when you will merge the latest patch?

I just updated the beta server with support for the latest manifest merging tool.
Use https://build-stage.defold.com as your build server.

3 Likes

I’m experiencing problem with IronSource on iOS.
Once I add the IronSource Defold SDK to the project, my app crashes at startup with the following logs:

Attempt to add an app with insufficient id, info {
    BKSApplicationStateAppIsFrontmost = 1;
    BKSApplicationStateExtensionKey = 0;
    SBApplicationStateDisplayIDKey = "com.example.todo";
    SBApplicationStateKey = 8;
    SBApplicationStateProcessIDKey = 591;
    SBApplicationStateRunningReasonsKey =     (
                {
            SBApplicationStateRunningReasonAssertionIdentifierKey = UIApplicationLaunch;
            SBApplicationStateRunningReasonAssertionReasonKey = 10000;
        }
    );
    SBMostElevatedStateForProcessID = 8;
}

I’m really struggling to understand what’s going on. I use the latest Ironsource Defold SDK and defold 1.2.184

The log doesn’t say much. Aren’t you getting a proper stack trace?

At the moment every time I click on “View Device Logs”, my Xcode crashes which is very annoying to dig into the logs… I manage to get the following logs in the console.

19:53:52.773439+0200	default	SpringBoard	Bootstrapping com.goldengoose.test with intent foreground-interactive
19:53:52.775521+0200	error	SpringBoard	[com.goldengoose.test] Bootstrap failed with error: <NSError: 0x2826ba100; domain: BKSProcessErrorDomain; code: 1 (bootstrap-failed); reason: "Failed to start job">
19:53:52.775747+0200	error	SpringBoard	Bootstrapping failed for <FBApplicationProcess: 0x151439a20; com.goldengoose.test; pid: -1> with error: Error Domain=BKSProcessErrorDomain Code=1 "Unable to bootstrap process with bundleID com.goldengoose.test" UserInfo={NSLocalizedDescription=Unable to bootstrap process with bundleID com.goldengoose.test, BKSProcessExitReason=0, NSLocalizedFailureReason=Failed to start job, NSUnderlyingError=0x2826b8330 {Error Domain=NSPOSIXErrorDomain Code=3 "No such process" UserInfo={BKLaunchdOperation=launch_get_running_pid_4SB, NSLocalizedDescription=Unable to get pid for label UIKitApplication:com.goldengoose.test[0x3011][62], BKLaunchdJobLabel=UIKitApplication:com.goldengoose.test[0x3011][62], NSLocalizedFailureReason=No such process}}, BKSProcessJobLabel=UIKitApplication:com.goldengoose.test[0x3011][62], BSErrorCodeDescription=bootstrap-failed}
19:53:52.775846+0200	default	SpringBoard	Adding: <FBApplicationProcess: 0x151439a20; com.goldengoose.test; pid: -1>
19:53:52.775943+0200	default	SpringBoard	<FBApplicationProcess: 0x151439a20; com.goldengoose.test; pid: -1> exited.
19:53:52.778359+0200	error	SpringBoard	[FBScene] Scene with ID "com.goldengoose.test" got nil client from provider <private>
19:53:52.778592+0200	default	SpringBoard	Removing: <FBApplicationProcess: 0x151439a20; com.goldengoose.test; pid: -1>
19:53:52.778649+0200	default	assertiond	Submitting new job for "com.goldengoose.test" on behalf of <BKProcess: 0x100f11a60; SpringBoard; com.apple.springboard; pid: 52; agency: SystemShell; visibility: foreground; task: running>
19:53:52.778748+0200	default	assertiond	Submitted job with label: UIKitApplication:com.goldengoose.test[0x3011][62]
19:53:52.778817+0200	default	assertiond	Unable to get pid for 'UIKitApplication:com.goldengoose.test[0x3011][62]': No such process (3)
19:53:52.778863+0200	default	SpringBoard	[com.goldengoose.test] Setting deactivation reasons to: 'systemAnimation' for reason: scene settings update - settings are eligible for deactivation reasons.
19:53:52.778917+0200	error	assertiond	Failed to start job with error <NSError: 0x100f42740; domain: NSPOSIXErrorDomain; code: 3; reason: "No such process"> {
    description = "Unable to get pid for label UIKitApplication:com.goldengoose.test[0x3011][62]";
    failureReason = "No such process";
    userInfo = {
        BKLaunchdJobLabel = UIKitApplication:com.goldengoose.test[0x3011][62];
        BKLaunchdOperation = launch_get_running_pid_4SB;
    }
}
19:53:52.820688+0200	default	SpringBoard	Application process state changed for com.goldengoose.test: <SBApplicationProcessState: 0x282b57020; pid: -1; taskState: Not Running; visibility: Unknown>
19:53:52.820820+0200	default	SpringBoard	Process exited: <FBApplicationProcess: 0x151439a20; com.goldengoose.test; pid: -1> -> <FBApplicationProcessExitContext: 0x2826a1d70; exitReason: (none); terminationReason: (none)> {
    stateAtExit = <FBProcessState: 0x282b53100; pid: -1; taskState: Unknown; visibility: Unknown>;
}

I just uploaded the test project I’m using: https://fructozeapp.ams3.digitaloceanspaces.com/def_ironsource-master%202.zip
You just need to replace the Bundle identifier in game.project to run it on your machine.

Basically without the Ironsource dependency: app works fine.
If I add the dependency: crash at startup.

I’m running iOS 12.3 by the way.

Actually, even the canonical project https://github.com/MaratGilyazov/def_ironsource/archive/refs/tags/1.2.zip. crashes at startup.

I’m using iOS 12.3

@marat.giliazov Which version of iOS have you tested with? Any pointer on what could cause this crash?

It was done a year ago or so and I was not updating it, so I can’t say either why it’s broken now or how to fix it, sorry.

OK I understand. For information purposes, here is the crash log:

Exception Type:  EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note:  EXC_CORPSE_NOTIFY
Termination Description: DYLD, Library not loaded: /System/Library/Frameworks/AVFAudio.framework/AVFAudio | Referenced from: /var/containers/Bundle/Application/E27173D0-5F42-4B19-943A-02E7A35E417C/ironsource.app/ironsource | Reason: image not found
Triggered by Thread:  0

Thread 0 Crashed:
0   dyld                          	0x0000000104886398 __abort_with_payload + 8
1   dyld                          	0x00000001048859d8 abort_with_payload_wrapper_internal + 100
2   dyld                          	0x0000000104885a08 fcntl + 0
3   dyld                          	0x00000001048488f8 dyld::fastBindLazySymbol+ 18680 (ImageLoader**, unsigned long) + 0
4   dyld                          	0x000000010484b6e4 dyld::_main+ 30436 (macho_header const*, unsigned long, int, char const**, char const**, char const**, unsigned long*) + 5396
5   dyld                          	0x0000000104845044 _dyld_start + 68

Thread 0 crashed with ARM Thread State (64-bit):
    x0: 0x0000000000000006   x1: 0x0000000000000001   x2: 0x000000016bdb29a0   x3: 0x00000000000000ad
    x4: 0x000000016bdb25a0   x5: 0x0000000000000000   x6: 0x0000000000000000   x7: 0x0000000000000430
    x8: 0x0000000000000020   x9: 0x0000000000000009  x10: 0x6f72692f7070612e  x11: 0x0a656372756f736e
   x12: 0x20200a656372756f  x13: 0x203a6e6f73616552  x14: 0x6f6e206567616d69  x15: 0x00646e756f662074
   x16: 0x0000000000000209  x17: 0x0000000000000010  x18: 0x0000000000000000  x19: 0x0000000000000000
   x20: 0x000000016bdb25a0  x21: 0x00000000000000ad  x22: 0x000000016bdb29a0  x23: 0x0000000000000001
   x24: 0x0000000000000006  x25: 0x000000000000002f  x26: 0x000000010489f5e0  x27: 0x000000010489f000
   x28: 0x000000010489fa00   fp: 0x000000016bdb2570   lr: 0x00000001048859d8
    sp: 0x000000016bdb2530   pc: 0x0000000104886398 cpsr: 0x00000000

Binary Images:
0x10404c000 - 0x1043abfff ironsource arm64  <105593f0f4a1397cbfe8c879d33d2703> /var/containers/Bundle/Application/E27173D0-5F42-4B19-943A-02E7A35E417C/ironsource.app/ironsource
0x104844000 - 0x10489bfff dyld arm64  <9c893b6aa3b13d9596326ef6952e7195> /usr/lib/dyld

EOF

I updated my phone to iOS 14.6 and now it works.

Termination Description: DYLD, Library not loaded: /System/Library/Frameworks/AVFAudio.framework/AVFAudio

The error is there, it says the file AVFAudio couldn’t be loaded.

Googling AVFAudio, it says it only exists since iOS 14.5.
https://developer.apple.com/documentation/avfaudio?language=objc

Hmm thanks for the pointer.
I guess that library is required from ironSource SDK. which is weird because they say they support iOS 9+
Will investigate.

Is that the only dependency that you’re using?

Which build server are you using?

the only other extension I’m using is https://github.com/britzl/gooey/archive/8.0.0.zip

Im using build server https://build-stage.defold.com/

1 Like

We have updated the stage (beta) server to use iOS 14.5, so maybe something changed there. I think it should still work on older OS’es though, so I need to double check this some more.

Hi!
I have some problems with using admob adapter and sdk , can you help me please?

Solved my problem, in fork last version of sdk, now tested android only

1 Like

Any update on this?

When using ironsource SDK with iOS, it doesn’t crash on device with iOS 14.6,
but it crashes on iOS 11.4.1, 12 and 14.

The app can’t open and I get the follow log:

Aug 24 12:37:31 iPhone-user SpringBoard(FrontBoard)[55] <Error>: Bootstrapping failed for <FBApplicationProcess: 0x1611e6570; com.mytest.mytest; pid: -1> with error: Error Domain=BKSProcessErrorDomain Code=1 "Unable to bootstrap process with bundleID com.mytest.mytest" UserInfo={NSLocalizedDescription=Unable to bootstrap process with bundleID com.mytest.mytest, BKSProcessExitReason=0, NSLocalizedFailureReason=Failed to start job, NSUnderlyingError=0x1c0455b10 {Error Domain=NSPOSIXErrorDomain Code=3 "No such process" UserInfo={NSLocalizedFailureReason=The process failed to exec, NSLocalizedRecoverySuggestion=Consult /var/log/com.apple.xpc.launchd/launchd.log for more information, NSLocalizedDescription=Unable to get valid task name port right for pid 477}}, BSErrorCodeDescription=bootstrap-failed}

Could it come from the iOS 14.5 on the build server? Is there a build server with a version < 14.5?

I’ve been trying lots of things… I can’t run the IronSource SDK on iOS 11.4.1, 12 and 14.

I’m pretty sure the error comes from what @Mathias_Westerdahl pointed out, but I’m not sure what to do at this point. :woozy_face: