こんにちは、コタツです。

今回はXamarin FormsでAdMobインターステイシャル広告をiOS版で表示させる方法を紹介します。

AdMobバナー広告に関しましては、検索すればたくさんの参考サイトが見つかるのですがAdMobインターステイシャル広告につきましては、日本語サイトでの参考サイトは見つかりませんでした。(私の検索方法が未熟なのかもしれませんが・・・)無理やりの感じはありますが、Android版を実装しましたので紹介します。もし間違っていたりもっといい方法があれば教えていただけると幸いです。

Xamarin Forms側

Xamarin Formsの「DependencyService」の機能を使用して実装します。「DependencyService」とはiOS/Androidの各プラットフォーム固有の機能を実装する方法ですが、「DependencyService」の説明に関してはここでは省かせていただきます。

Xamarin Forms側でインターフェースを定義します。「ShowBanner()」メソッドでAdMobインターステイシャル広告を表示して「ResetBanner()」でAdMobインターステイシャル広告を再読み込みするメソッドです。

iOS側

iOS側でAdMobインターステイシャル広告を操作するクラス「CCommonModel_iOS.cs」を作成します。このクラスはメモリ上に保管します。

「AppDelegate.cs」の「FinishedLaunching」メソッドに上記のソースを追加してください。

「CBannerCtrl_iOS.cs」は「DependencyService」での呼び出し側となります。メモリ上の「CCommonModel_iOS」クラスを呼び出して実装しています。

AdMobインターステイシャル広告の呼び出し方法

「CBannerCtrl.cs」クラスはAdMobインターステイシャル広告を表示するクラスです。AdMobインターステイシャル広告を表示したい時に使用してください

まとめ

今回はXamarin FormsでAdMobインターステイシャル広告iOS版を表示する方法を紹介しました。