Ultimately, the placeholder ad shows up, but when I click the Close button it does not call the OnUnityAdsShowComplete function, which runs the code to continue playing.
I’ve filled up my code with Debug.Logs and found a few confusing things:
Despite the placeholder ad showing up, OnInitializationComplete never runs.
After Advertisement.Initialize is run, Advertisement.isInitialized is never set to true.
TL;DR: As far as I know, the placeholder should not show up if the advertisement is never initialized, but it seems to be getting there somehow. Additionally, even though the ad placeholder appears, clicking the Close button does not trigger OnUnityAdsShowComplete function.
It is implemented and the required functions are all in the class. But no worries, we found a solution! A colleague of mine was able to get it working by upgrading to a newer version of Unity.
I was too lazy to go that far, however, so I ended up changing the version of the Advertisement package from v3.75 to v4.4.2. It changed the name of the package to Advertisement Legacy and even though it’s probably not officially supported by the version of Unity I’m using, it did the job and made all of the functions work as intended without having to upgrade the project to a newer version of Unity.
Glad to hear the issue has been resolved. The ad package is renamed to distinguish newer ad packages and this does not mean that the editor version does not support it, more information about this can be seen here: https://discussions.unity.com/t/914810