Appodeal 激励广告加载失败
Appodeal Rewarded ads failed to Load
我解决这个问题大约 3 天。我正在实施 Appodeal 的奖励广告。当我第一次启动我的应用程序时,它工作正常。调用了 Appodeal onRewardedVideoLoaded 函数,它工作正常。但是在关闭应用程序并再次 运行 之后。它总是调用 onRewardedVideoFailedToLoad 函数并且不加载广告。下面是我的代码。
请检查此代码。谢谢
/** Set up button to show an ad when clicked */
show_button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
//ad.show();
if (Appodeal.isLoaded(Appodeal.REWARDED_VIDEO)) {
Appodeal.show(getActivity(), Appodeal.REWARDED_VIDEO);
}
}
});
//appodeal
Appodeal.setAutoCache(Appodeal.REWARDED_VIDEO, false);
Appodeal.initialize(getActivity(), appKey, Appodeal.REWARDED_VIDEO);
// Appodeal.setTesting(true);
Appodeal.setLogLevel(com.appodeal.ads.utils.Log.LogLevel.verbose);
Appodeal.cache(getActivity(), Appodeal.REWARDED_VIDEO);
if (Appodeal.isLoaded(Appodeal.REWARDED_VIDEO)) {
progress.setVisibility(View.INVISIBLE);
System.out.println("Is loaded so enable");
show_button.setText("Earn Reward");
}
Appodeal.setRewardedVideoCallbacks(new RewardedVideoCallbacks() {
private Toast mToast;
@Override
public void onRewardedVideoLoaded() {
System.out.println("onRewardedVideoLoaded");
show_button.setEnabled(true);
progress.setVisibility(View.INVISIBLE);
show_button.setText("Earn Reward");
}
@Override
public void onRewardedVideoFailedToLoad() {
System.out.println("onRewardedVideoFailedToLoad");
progress.setVisibility(View.INVISIBLE);
}
@Override
public void onRewardedVideoShown() {
System.out.println("onRewardedVideoShown");
show_button.setEnabled(false);
show_button.setText("Not Avalible");
progress.setVisibility(View.VISIBLE);
}
@Override
public void onRewardedVideoFinished(int amount, String name) {
System.out.println(String.format("onRewardedVideoFinished. Reward: %d %s", amount, name));
SharedPref.putIntPref("rewards_count", SharedPref.getIntPref("rewards_count", getContext()) + amount, getContext());
// watcher.RemainingRewards(SharedPref.getIntPref("rewards_count", getContext()));
UpdateRewards();
}
@Override
public void onRewardedVideoClosed(boolean finished) {
System.out.println(String.format("onRewardedVideoClosed, finished: %s", finished));
}
void showToast(final String text) {
if (mToast == null) {
mToast = Toast.makeText(getActivity(), text, Toast.LENGTH_SHORT);
}
mToast.setText(text);
mToast.setDuration(Toast.LENGTH_SHORT);
mToast.show();
}
});
return view;
}
我也遇到过类似的问题,其实是和我用的框架有关(联系他们才知道),所以我建议直接问他们的支持,一般他们回复比较快+你可以给他们留言来自主页右下角的 LiveChat window。这将是解决您的问题的最佳方法。不确定我的案例是否能解决您的问题,但它仍然可能以某种方式帮助您。
我想在几个项目中展示可跳过和不可跳过的视频。
总而言之,使用可跳过的视频很简单,我只需要在初始化时实现 GdxAppodeal.VIDEO。
所以要显示我使用的视频 GdxAppodeal.getInstance().show(GdxAppodeal.VIDEO);
+
视频回调:
GdxAppodeal.getInstance().setVideoCallbacks(new VideoCallback() {
@Override
public void onVideoLoaded() { }
@Override
public void onVideoFailedToLoad() { }
@Override
public void onVideoShown() { }
@Override
public void onVideoFinished() { }
@Override
public void onVideoClosed() { }
});
重要的细微差别是您无法在网站上为可跳过的视频设置奖励设置。
这仅适用于 rev vids。
因此,用户将在 RewardedVideoFinished 回调中获得奖励
我解决这个问题大约 3 天。我正在实施 Appodeal 的奖励广告。当我第一次启动我的应用程序时,它工作正常。调用了 Appodeal onRewardedVideoLoaded 函数,它工作正常。但是在关闭应用程序并再次 运行 之后。它总是调用 onRewardedVideoFailedToLoad 函数并且不加载广告。下面是我的代码。
请检查此代码。谢谢
/** Set up button to show an ad when clicked */
show_button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
//ad.show();
if (Appodeal.isLoaded(Appodeal.REWARDED_VIDEO)) {
Appodeal.show(getActivity(), Appodeal.REWARDED_VIDEO);
}
}
});
//appodeal
Appodeal.setAutoCache(Appodeal.REWARDED_VIDEO, false);
Appodeal.initialize(getActivity(), appKey, Appodeal.REWARDED_VIDEO);
// Appodeal.setTesting(true);
Appodeal.setLogLevel(com.appodeal.ads.utils.Log.LogLevel.verbose);
Appodeal.cache(getActivity(), Appodeal.REWARDED_VIDEO);
if (Appodeal.isLoaded(Appodeal.REWARDED_VIDEO)) {
progress.setVisibility(View.INVISIBLE);
System.out.println("Is loaded so enable");
show_button.setText("Earn Reward");
}
Appodeal.setRewardedVideoCallbacks(new RewardedVideoCallbacks() {
private Toast mToast;
@Override
public void onRewardedVideoLoaded() {
System.out.println("onRewardedVideoLoaded");
show_button.setEnabled(true);
progress.setVisibility(View.INVISIBLE);
show_button.setText("Earn Reward");
}
@Override
public void onRewardedVideoFailedToLoad() {
System.out.println("onRewardedVideoFailedToLoad");
progress.setVisibility(View.INVISIBLE);
}
@Override
public void onRewardedVideoShown() {
System.out.println("onRewardedVideoShown");
show_button.setEnabled(false);
show_button.setText("Not Avalible");
progress.setVisibility(View.VISIBLE);
}
@Override
public void onRewardedVideoFinished(int amount, String name) {
System.out.println(String.format("onRewardedVideoFinished. Reward: %d %s", amount, name));
SharedPref.putIntPref("rewards_count", SharedPref.getIntPref("rewards_count", getContext()) + amount, getContext());
// watcher.RemainingRewards(SharedPref.getIntPref("rewards_count", getContext()));
UpdateRewards();
}
@Override
public void onRewardedVideoClosed(boolean finished) {
System.out.println(String.format("onRewardedVideoClosed, finished: %s", finished));
}
void showToast(final String text) {
if (mToast == null) {
mToast = Toast.makeText(getActivity(), text, Toast.LENGTH_SHORT);
}
mToast.setText(text);
mToast.setDuration(Toast.LENGTH_SHORT);
mToast.show();
}
});
return view;
}
我也遇到过类似的问题,其实是和我用的框架有关(联系他们才知道),所以我建议直接问他们的支持,一般他们回复比较快+你可以给他们留言来自主页右下角的 LiveChat window。这将是解决您的问题的最佳方法。不确定我的案例是否能解决您的问题,但它仍然可能以某种方式帮助您。
我想在几个项目中展示可跳过和不可跳过的视频。
总而言之,使用可跳过的视频很简单,我只需要在初始化时实现 GdxAppodeal.VIDEO。
所以要显示我使用的视频 GdxAppodeal.getInstance().show(GdxAppodeal.VIDEO);
+
视频回调:
GdxAppodeal.getInstance().setVideoCallbacks(new VideoCallback() {
@Override
public void onVideoLoaded() { }
@Override
public void onVideoFailedToLoad() { }
@Override
public void onVideoShown() { }
@Override
public void onVideoFinished() { }
@Override
public void onVideoClosed() { }
});
重要的细微差别是您无法在网站上为可跳过的视频设置奖励设置。 这仅适用于 rev vids。
因此,用户将在 RewardedVideoFinished 回调中获得奖励