AdMobをAndroidに組み込んでみよう（Video広告編）

AdMobをAndroifに組み込んでみようという事で覚書

「AdMobをAndroidに組み込んでみよう（環境設定編）」の続きです。
https://qiita.com/sanoh/items/79d04b021d18bdff0e06
■Step1.画面レイアウトを設定しよう
---
・activity_main.xmlをひらき「Button」を作成、名前を「ｍMyButton」とします。（レイアウトエディタの使い方は省きます）![2020-06-16 (18).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/122121/75b8cf8e-e95f-6acb-267e-21fb76ba99db.png)
ボタンの配置はこのようにしておくとよいでしょう
![2020-06-16 (19).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/122121/c5a84ed3-0dc6-3e9f-2462-4bbf536b6b4a.png)
■Setp2.プログラム
---
・MainActivityを編集します。

```kotlin
package com.toox.admod03

import android.app.Activity
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import androidx.annotation.NonNull
import com.google.android.gms.ads.AdRequest
import com.google.android.gms.ads.rewarded.*
import kotlinx.android.synthetic.main.activity_main.*

class MainActivity : AppCompatActivity() {
    private lateinit var rewardedAd: RewardedAd
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        rewardedAd = createAndLoadRewardedAd("ca-app-pub-3940256099942544/5224354917")
        val adLoadCallback = object : RewardedAdLoadCallback() {
            override fun onRewardedAdLoaded() { // Ad successfully loaded.
            }
            override fun onRewardedAdFailedToLoad(errorCode: Int) { // Ad failed to load.
            }
        }
        rewardedAd.loadAd(AdRequest.Builder().build(), adLoadCallback)
        mMyButton.setOnClickListener {
            if (rewardedAd.isLoaded) {
                val activityContext: Activity = this@MainActivity
                val adCallback = object : RewardedAdCallback() {
                    override fun onRewardedAdOpened() { //開くとき
                    }
                    override fun onRewardedAdClosed() { //ムービーとじるときに、次のしこみ
                        rewardedAd =
                            createAndLoadRewardedAd("ca-app-pub-3940256099942544/5224354917")
                    }
                    override fun onUserEarnedReward(@NonNull reward: RewardItem) { //  最後までみたらくる
                    }
                    override fun onRewardedAdFailedToShow(errorCode: Int) { //  失敗
                    }
                }
                rewardedAd.show(activityContext, adCallback)
            }
        }
    }
    fun createAndLoadRewardedAd(adUnitId:String): RewardedAd {
        val rewardedAd = RewardedAd(this, adUnitId)
        val adLoadCallback = object : RewardedAdLoadCallback() {
            override fun onRewardedAdLoaded() { // Ad successfully loaded.
            }
            override fun onRewardedAdFailedToLoad(errorCode: Int) { // Ad failed to load.
            }
        }
        rewardedAd.loadAd(AdRequest.Builder().build(), adLoadCallback)
        return rewardedAd
    }
}
```
![2020-06-16 (20).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/122121/12e854ba-1c8a-246b-8c8b-5b5c3ac4dcef.png)
■Step3.実行
---
プログラムを実行すると
![2020-06-16 (21).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/122121/661b3adc-fa10-b0c4-026c-45b88670f098.png)
ボタンを押すと
![2020-06-16 (22).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/122121/6d19446c-6cfd-ea5d-1d8a-d3a22005d580.png)
となります