質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Q&A

解決済

1回答

1154閲覧

Admobのリワードが実装ができないので実装方法を教えてください。

Naokinaoki

総合スコア0

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

0グッド

0クリップ

投稿2020/10/29 02:17

AndroidStudioを使ってAndroidアプリの作成をしています。
リワードが始まりません。

AndroidManifestとbuild.gradleには、テストコード挿入済みです。
エラーなしです。

ソースコード

Java

1package com.example.douga; 2 3import androidx.appcompat.app.AppCompatActivity; 4 5import android.os.Bundle; 6import android.os.CountDownTimer; 7import android.util.Log; 8import android.widget.TextView; 9import android.widget.Toast; 10 11import com.google.android.gms.ads.AdRequest; 12import com.google.android.gms.ads.MobileAds; 13import com.google.android.gms.ads.reward.RewardItem; 14import com.google.android.gms.ads.reward.RewardedVideoAd; 15import com.google.android.gms.ads.reward.RewardedVideoAdListener; 16import com.google.android.gms.ads.rewarded.RewardedAd; 17 18public class MainActivity extends AppCompatActivity implements RewardedVideoAdListener { 19 20 private static final String AD_UNIT_ID = "ca-app-pub-3940256099942544/5224354917"; 21 private static final String APP_ID = "ca-app-pub-3940256099942544~3347511713"; 22 23 private static final String TAG = "MainActivity"; 24 TextView textView; 25 private CountDownTimer mCountDownTimer; 26 private static long SET_TIME = 10; 27 private long timeRemaining; 28 private RewardedVideoAd rewardedVideoAd; 29 30 31 @Override 32 protected void onCreate(Bundle savedInstanceState) { 33 super.onCreate(savedInstanceState); 34 setContentView(R.layout.activity_main); 35 36 37 38 textView = (TextView) findViewById(R.id.textView); 39 40 MobileAds.initialize(this, APP_ID); 41 rewardedVideoAd = MobileAds.getRewardedVideoAdInstance(this);/// 42 rewardedVideoAd.setRewardedVideoAdListener(this);/// 43 loadRewardedVideoAd(); 44 45 timer(SET_TIME); 46 } 47 private void timer(long time) { 48 mCountDownTimer = new CountDownTimer(time * 1000, 1000) { 49 50 public void onTick(long millisUntilFinished) { 51 timeRemaining = millisUntilFinished/1000; 52 textView.setText("seconds remaining: " + timeRemaining); 53 } 54 55 public void onFinish() { 56 textView.setText("done!"); 57 //動画広告 58 showRewardedVideo(); 59 60 } 61 62 }.start(); 63 } 64 65 private void loadRewardedVideoAd() { 66 if (!rewardedVideoAd.isLoaded()) { 67 rewardedVideoAd.loadAd(AD_UNIT_ID, new AdRequest.Builder().build()); 68 } 69 } 70 private void showRewardedVideo() { 71 if (rewardedVideoAd.isLoaded()) { 72 rewardedVideoAd.show(); 73 } 74 } 75 76 @Override 77 protected void onStart() { 78 super.onStart(); 79 Log.i(TAG, "★onStart"); 80 81 } 82 83 @Override 84 protected void onRestart(){ 85 super.onRestart(); 86 Log.i(TAG, "★onRestart"); 87 timer(timeRemaining); 88 } 89 90 @Override 91 protected void onResume() { 92 super.onResume(); 93 Toast.makeText(this, "onResume", Toast.LENGTH_SHORT).show(); 94 Log.i(TAG, "★onResume"); 95 96 } 97 98 @Override 99 protected void onPause() { 100 super.onPause(); 101 Toast.makeText(this, "onPause", Toast.LENGTH_SHORT).show(); 102 Log.i(TAG, "★onPause"); 103 104 } 105 106 @Override 107 protected void onStop() { 108 super.onStop(); 109 Toast.makeText(this, "onStop", Toast.LENGTH_SHORT).show(); 110 Log.i(TAG, "★onStop"); 111 112 mCountDownTimer.cancel(); 113 } 114 115 //広告の準備完了 116 @Override 117 public void onRewardedVideoAdLoaded() { 118 Toast.makeText(this, "onRewardedVideoAdLoaded", Toast.LENGTH_SHORT).show(); 119 Log.i(TAG,"onRewardedVideoAdLoaded : "); 120 } 121 122 //広告へ移動するとき 123 @Override 124 public void onRewardedVideoAdOpened() { 125 Toast.makeText(this, "onRewardedVideoAdOpened", Toast.LENGTH_SHORT).show(); 126 Log.i(TAG,"onRewardedVideoAdOpened : "); 127 } 128 129 //広告再生 130 @Override 131 public void onRewardedVideoStarted() { 132 Toast.makeText(this, "onRewardedVideoStarted", Toast.LENGTH_SHORT).show(); 133 Log.i(TAG,"onRewardedVideoStarted : "); 134 } 135 136 @Override 137 public void onRewardedVideoAdClosed() { 138 Toast.makeText(this, "広告視聴ありがとうございました", Toast.LENGTH_SHORT).show(); 139 Log.i(TAG,"onRewardedVideoAdClosed : "); 140 141 } 142 143 @Override 144 public void onRewarded(RewardItem rewardItem) { 145 Toast.makeText(this, "Yes! I GOT", Toast.LENGTH_SHORT).show(); 146 Log.i(TAG,"onRewarded : "); 147 } 148 149 //広告から離れるとき 150 @Override 151 public void onRewardedVideoAdLeftApplication() { 152 Toast.makeText(this, "onRewardedVideoAdLeftApplication", Toast.LENGTH_SHORT).show(); 153 Log.i(TAG,"onRewardedVideoAdLeftApplication : "); 154 } 155 156 @Override 157 public void onRewardedVideoAdFailedToLoad(int i) { 158 Toast.makeText(this, "onRewardedVideoAdFailedToLoad", Toast.LENGTH_SHORT).show(); 159 Log.i(TAG,"onRewardedVideoAdFailedToLoad : "); 160 } 161 162 @Override 163 public void onRewardedVideoCompleted() { 164 Toast.makeText(this, "onRewardedVideoCompleted", Toast.LENGTH_SHORT).show(); 165 Log.i(TAG,"onRewardedVideoCompleted : "); 166 } 167}

XML

1<?xml version="1.0" encoding="utf-8"?> 2<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" 3 xmlns:app="http://schemas.android.com/apk/res-auto" 4 xmlns:tools="http://schemas.android.com/tools" 5 android:layout_width="match_parent" 6 android:layout_height="match_parent" 7 tools:context=".MainActivity"> 8 9 <TextView 10 android:id="@+id/textView" 11 android:textSize="25dp" 12 android:layout_width="wrap_content" 13 android:layout_height="wrap_content" 14 android:text="Hello World!" 15 app:layout_constraintBottom_toBottomOf="parent" 16 app:layout_constraintLeft_toLeftOf="parent" 17 app:layout_constraintRight_toRightOf="parent" 18 app:layout_constraintTop_toTopOf="parent" /> 19 20 <Button 21 android:id="@+id/myButton" 22 android:layout_width="wrap_content" 23 android:layout_height="wrap_content" 24 android:text="Button" 25 app:layout_constraintBottom_toBottomOf="parent" 26 app:layout_constraintEnd_toEndOf="parent" 27 app:layout_constraintStart_toStartOf="parent" 28 app:layout_constraintTop_toBottomOf="@+id/textView" /> 29 30</androidx.constraintlayout.widget.ConstraintLayout>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

myButtonにshowRewardedVideo();を入れたらできました。

findViewById(R.id.myButton).setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View V){
showRewardedVideo();
}
});

投稿2020/10/30 02:25

Naokinaoki

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問