AdColony - AdMob中介/测试广告已投放但实时广告无效

时间:2016-11-10 15:18:15

标签: android video admob adcolony

我是这个论坛和Android世界的新手。我刚开发了一款名为“ReklamsızBilgiYarışması”的单人游戏琐事游戏,只支持我的当地语言,但在世界各地都可以访问。

我只是按照指南操作,将AdColony集成到我的AdMob帐户,并通过测试视频广告获得完美结果。

然而,在上线后,什么也没发生。我的许多客户都告诉我他们无法获得广告视频。此外,在admob中,我看到发生了650个请求,其中只有4个获得了视频!

在AdColony的统计数据中,我看到只有5位幸运的人要求观看视频并观看了完整视频,然后获得了奖励。

那么,怎么可能呢? AdMob(或AdColony)回答了数百个请求,但只有%0.25个回答,我无法理解。

最后,我98%的客户来自土耳其,%1来自阿塞拜疆,%1来自德国。

编码中是否有任何错误?因为我在物理设备上看到了测试广告,而不是在模拟器上。

谢谢!

<<<<<<<<<<<<在Manıfest>>>>>>>>>>>>>>>

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />

<meta-data
        android:name="com.google.android.gms.version"
        android:value="@integer/google_play_services_version" />

 <activity
        android:name="com.google.android.gms.ads.AdActivity"
        android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"
        android:theme="@android:style/Theme.Translucent" />

    <activity android:name="com.jirbo.adcolony.AdColonyOverlay"
        android:configChanges="keyboardHidden|screenSize"
        android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen" />

    <activity android:name="com.jirbo.adcolony.AdColonyFullscreen"
        android:configChanges="keyboardHidden|screenSize"
        android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" />

    <activity android:name="com.jirbo.adcolony.AdColonyBrowser"
        android:configChanges="keyboardHidden|screenSize"
        android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" />

我在Manifest中拥有所有需要的代码我认为

&LT;&LT;&LT;&LT;&LT;&LT;&LT;&LT;&LT;&GT;&GT;&GT;&GT;&GT;&GT;&GT;&GT;&GT;&GT;&GT;

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])

compile 'com.android.support:appcompat-v7:23.4.0'
compile 'com.google.android.gms:play-services-ads:9.8.0'
compile 'com.google.firebase:firebase-core:9.8.0'
}


apply plugin: 'com.google.gms.google-services'

在Libs中,我有“Adcolony * jar”

&LT;&LT;&LT;&LT;&LT;&LT;&LT;&LT;&LT;&LT;&LT;在Java&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;

import com.jirbo.adcolony.AdColony;
import com.jirbo.adcolony.AdColonyAdapter;
import com.jirbo.adcolony.AdColonyBundleBuilder;
import com.jirbo.adcolony.*;
import com.google.ads.mediation.admob.AdMobAdapter;
import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.MobileAds;
import com.google.android.gms.ads.reward.RewardItem;
import com.google.android.gms.ads.reward.RewardedVideoAd;
import com.google.android.gms.common.ConnectionResult;
import com.google.android.gms.common.GooglePlayServicesUtil;

public class oyunsonu extends Activity implements RewardedVideoAdListener{
// I Have those implementation with the importations stated above


private static final String AD_UNIT_ID = "xxxxxxxx";
private static final String APP_ID = "xxxxxxxx";
private static final String LOGTAG = "GMS";
private boolean mIsRewardedVideoLoading;
private RewardedVideoAd mRewardedVideoAd2;
private final Object mLock = new Object();

  @Override
    protected void onCreate (Bundle savedInstanceState){
    super.onCreate(savedInstanceState);
    setContentView(R.layout.oyunsonu);
checkGooglePlayServicesAvailable();

    MobileAds.initialize(this, APP_ID);

    mRewardedVideoAd2 = MobileAds.getRewardedVideoAdInstance(this);
    mRewardedVideoAd2.setRewardedVideoAdListener(this);
    loadRewardedVideoAd();



}

 private void loadRewardedVideoAd() {
    synchronized (mLock) {
        if (!mIsRewardedVideoLoading && !mRewardedVideoAd2.isLoaded()) {

            mIsRewardedVideoLoading = true;
            Bundle extras = new Bundle();
            extras.putBoolean("_noRefresh", true);
            AdRequest adRequest = new     AdRequest.Builder().addNetworkExtrasBundle(AdColonyAdapter.class, extras)
                    .addNetworkExtrasBundle(AdMobAdapter.class, extras)
                    .build();
            mRewardedVideoAd2.loadAd(AD_UNIT_ID, adRequest);

        }
    }
}

private void showRewardedVideo() {
    if (mRewardedVideoAd2.isLoaded()) {
        mRewardedVideoAd2.show();
    }
}

private boolean checkGooglePlayServicesAvailable()
{
    final int status =     GooglePlayServicesUtil.isGooglePlayServicesAvailable(getApplicationContext())    ;
    if (status == ConnectionResult.SUCCESS)
    {
        return true;
    }

    Log.e(LOGTAG, "Google Play Services not available: " + GooglePlayServicesUtil.getErrorString(status));

    if (GooglePlayServicesUtil.isUserRecoverableError(status))
    {
        final Dialog errorDialog = GooglePlayServicesUtil.getErrorDialog(status, this, 1);
        if (errorDialog != null)
        {
            errorDialog.show();
        }
    }

    return false;
}


@Override
public void onRewardedVideoAdLeftApplication() {

}

@Override
public void onRewardedVideoAdClosed() {
    loadRewardedVideoAd();
}

@Override
public void onRewardedVideoAdFailedToLoad(int errorCode) {
    mIsRewardedVideoLoading = false;
    Toast.makeText(this, "Sunucu Kaynaklı Hata! Ödüllü Reklam Mevcut Değil!", Toast.LENGTH_SHORT).show();
    reklamizlex.setVisibility(View.INVISIBLE);
}

@Override
public void onRewardedVideoAdLoaded() {
    mIsRewardedVideoLoading = false;
    reklamizlex.setVisibility(View.VISIBLE);
}

@Override
public void onRewardedVideoAdOpened() {

}

@Override
public void onRewarded(RewardItem reward) {

    rekflag = 1;
    yenidenoyna.setBackgroundResource(R.drawable.butonbosgri);
    anamenuyegit.setBackgroundResource(R.drawable.butonbosgri);
    reklamizlex.setBackgroundResource(R.drawable.butonbosgri);
    final Intent yenidenoynamakr = new Intent(getApplicationContext(), sorulars.class);
    yenidenoynamakr.putExtra("rekdurumu", rekflag);
    yenidenoynamakr.putExtra("sonskorx", sonskorz);
    yenidenoynamakr.putExtra("katsec", katdurumu);
    yenidenoynamakr.putExtra("ajdurumu", ajsay);
    yenidenoynamakr.putExtra("yydurumu", yysay);
    yenidenoynamakr.putExtra("sdegdurumu", dsay);
    yenidenoynamakr.putExtra("ssaydurumu", ssay);
    yenidenoynamakr.putExtra("jokkodurumu", jokko);
    startActivity(yenidenoynamakr);

}

@Override
public void onRewardedVideoStarted() {

}

}

以下是我使用的所有代码,这些代码都是关于“奖励视频广告”

1 个答案:

答案 0 :(得分:0)

我无法解决问题,但我认为这是由AdColony造成的。由于7人可以设法看到实时广告,其他人收到警告“RewardedVideoFailedtoLoad”。我认为AdColony限制了我的广告观看次数,因为我的应用程序现在只有2.500,土耳其也有近99%。可能是关于位置和下载数量。我刚用Chartboost更新了我的游戏。