我解决这个问题大约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;
}
答案 0 :(得分:0)
我有一个类似的问题,但实际上它与我使用的框架有关(在我联系之后结果),所以我建议直接询问他们的支持,通常他们反应相当快+你可以给他们发消息从主页上的LiveChat窗口,右下角。这将是解决您的问题的最佳方式。不确定我的案例会解决你的问题,但它仍然可能以某种方式帮助你。
我想在几个项目中展示可跳过的和不可跳过的视频。
总而言之,使用可跳过的视频很简单,我只需要在初始化时实现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回调
的奖励