[英]on click reward videos link nothing happens?
我的应用中有admob奖励视频。 问题是,当我单击文本视图以显示广告时,什么也没发生。
public RewardedVideoAd mRewardedVideoAd;
MobileAds.initialize(this, "ca-app-pub-3940256099942544/5224354917");
// Use an activity context to get the rewarded video instance.
mRewardedVideoAd = MobileAds.getRewardedVideoAdInstance(this);
mRewardedVideoAd.setRewardedVideoAdListener(this);
tip.setOnClickListener( new View.OnClickListener() {
@Override
public void onClick(View v) {
loadRewardedVideo();
}
});
和替代...
@Override
public void onRewardedVideoAdLoaded() {
System.out.println("Loaded()");
}
@Override
public void onRewardedVideoAdOpened() {
System.out.println("Opened");
}
@Override
public void onRewardedVideoStarted() {
System.out.println("Started");
}
@Override
public void onRewardedVideoAdClosed() {
System.out.println("Closed");
}
@Override
public void onRewarded(RewardItem rewardItem) {
System.out.println("reward");
}
@Override
public void onRewardedVideoAdLeftApplication() {
System.out.println("left");
}
@Override
public void onRewardedVideoAdFailedToLoad(int i) {
System.out.println("failed");
}
@Override
public void onRewardedVideoCompleted() {
}
private void loadRewardedVideo() {
mRewardedVideoAd.loadAd("ca-app-pub-3940256099942544/5224354917",
new AdRequest.Builder().build());
}
我错过了什么? 这是怎么了 谢谢。
产量
I/Ads: This request is sent from a test device.
D/dalvikvm: GC_FOR_ALLOC freed 1654K, 22% free 7281K/9236K, paused 9ms, total 10ms
I/Ads: SDK version: afma-sdk-a-v15000000.15000000.0
D/dalvikvm: GC_FOR_ALLOC freed 1478K, 27% free 6773K/9236K, paused 8ms, total 8ms
D/dalvikvm: GC_FOR_ALLOC freed 1109K, 25% free 6979K/9236K, paused 10ms, total 11ms
D/EGL_emulation: eglMakeCurrent: 0xb7aa9b10: ver 2 0
E/EGL_emulation: tid 1994: eglSurfaceAttrib(1199): error 0x3009 (EGL_BAD_MATCH)
W/HardwareRenderer: Backbuffer cannot be preserved
W/AwContents: nativeOnDraw failed; clearing to background color.
I/ExoPlayerImpl: Init ExoPlayerLib/2.4.2 [generic_x86, Android SDK built for x86, unknown, 19]
I/chromium: [INFO:async_pixel_transfer_manager_android.cc(56)] Async pixel transfers not supported
D/gralloc_ranchu: gralloc_alloc: Creating ashmem region of size 589824
D/gralloc_ranchu: gralloc_alloc: Creating ashmem region of size 98304
D/gralloc_ranchu: gralloc_alloc: Creating ashmem region of size 98304
D/MetadataUtil: Skipped unknown metadata entry: gsst
Skipped unknown metadata entry: gstd
D/MediaCodecVideoRenderer: FalseCheck [legacyFrameSize, 640x360] [generic_x86, Android SDK built for x86, unknown, 19]
FalseCheck [legacyFrameSize, 640x360] [generic_x86, Android SDK built for x86, unknown, 19]
I/OMXClient: Using client-side OMX mux.
I/SoftAAC2: Reconfiguring decoder: 0->44100 Hz, 0->2 channels
D/dalvikvm: GC_FOR_ALLOC freed 1284K, 25% free 6998K/9236K, paused 16ms, total 16ms
I/System.out: Loaded()
我也在真实设备上进行了测试,也没有任何反应。
在我的应用程序上成功投放奖励广告近1.5年之后,我还试图搜索导致相同问题的原因。 甚至我的帐户都被封锁了,但是没有人告诉我,早期的rewardad库已完全改头换面。
以下步骤仅适用于Play商店中的应用程序。
有一个新的奖励广告库和一种新的实现方式。 Google已将rewardAds置于inAppBilling库下,从而将其与Admobs完全分开。 您只能在此处看到其收入。 您必须通过Play控制台实施它。
for (SkuDetails skuDetails : skuDetailsList) { if (skuDetails.isRewarded()) { rewardSkuDetails = skuDetails; billingManager.queryRewardAsync(skuDetails, new RewardResponseListener() { @Override public void onRewardResponse(BillingResult billingResult) { if (billingResult.getResponseCode() == BillingClient.BillingResponseCode.OK) { findViewById(R.id.vidbut).setVisibility(View.VISIBLE); // Enable the reward product, or make // any necessary updates to the UI. } } }); } }
要展示广告,只需启动购买流程,例如
billingManager.initiatePurchaseFlow(rewardSkuDetails,null,BillingClient.SkuType.INAPP);
如果您在设置billingManager时需要更多帮助,可以随意发表评论。 希望它能帮助您实施新的RewardAds。 祝好运!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.