Hi, we develop middleware for developing iOS apps using Cordova. A user reported to us the following issue which we can reproduce: after showing an interstitial video ad, the app can no longer play any audio. It works if the app is actively playing audio at the time the interstitial plays, in which case the audio is faded out when the ad starts and then fades back in when the ad finishes, and then audio playback continues to work normally. However if the app is not actively playing audio at the time the interstitial plays, the app is unable to play any more audio once the ad finishes.
This does not reproduce with rewarded video ads - they seem to work fine. There seems to be a problem with interstitial video ads specifically.
When the bug happens the Xcode log shows a few errors similar to these:
2020-05-20 11:51:57.383791+0100 MobileAdTest[254:3572] [assertion] Error acquiring assertion: <NSError: 0x281f65380; domain: RBSAssertionErrorDomain; code: 2; reason: "Client is missing required entitlement"> {
userInfo = {
RBSAssertionAttribute = <RBSLegacyAttribute: 0x15bd8d850; requestedReason: MediaPlayback; reason: MediaPlayback; flags: PreventTaskSuspend | PreventTaskThrottleDown | WantsForegroundResourcePriority>;
}
}
2020-05-20 11:51:57.384638+0100 MobileAdTest[254:3572] [ProcessSuspension] 0x10a9b1fb8 - ProcessAssertion() PID 254 Unable to acquire assertion for process with PID 254
...
2020-05-20 11:52:08.412831+0100 MobileAdTest[254:3271] [ProcessSuspension] 0x10a9e7f60 - ProcessAssertion::processAssertionWasInvalidated()
2020-05-20 11:52:18.633665+0100 MobileAdTest[254:3271] Could not signal service com.apple.WebKit.WebContent: 113: Could not find specified service
I would guess that the interstitial video ad is claiming permission for audio playback, but failing to return it to the app at the end.
We are using the ads SDK version 7.58.0 (I'm aware 7.59.0 is out, but the release notes do not mention anything about audio), and tested on an iPad Pro (12.9 inch) running iOS 13.4.1.
Is this a bug in the ads SDK?