【问题标题】:Unity ads returns INVALID_ARGUMENTUnity 广告返回 INVALID_ARGUMENT
【发布时间】:2020-04-04 16:54:17
【问题描述】:

我已在我的 Android 应用(尚未发布)中集成了 UnityAds。 我从服务器上的数据库中获取应用程序 ID 和位置 ID。 App id 和placement id 是正确的,我已经复制和粘贴了大约30 次以确保它。 因此,当我尝试在测试模式下获取广告时,它给了我 INVALID_ARGUMENT 错误。 Here Unity 对错误代码的解释,但你可以看到它有点笼统。

我有一个仅代表广告服务的对象(如 admob、FAN、inmobi 等) 在这种情况下,该对象称为广告,这就是我使用 Unity 展示广告的方式:

protected void showUnity(){
    UnityAds.initialize(this, advert.getApiKey(), true); //advert.getApiKey() returns the app id
    UnityAds.addListener(new IUnityAdsListener() {
        @Override
        public void onUnityAdsReady(String s) {
            Log.i(TAG, "onUnityAdsReady "+s);
            if(s.equals(advert.getUnitId()) && !unityReady)
                UnityAds.show(ActivityAd.this, advert.getUnitId()); //advert.getUnitId() returns the placement id
        }

        @Override
        public void onUnityAdsStart(String s) {
            Log.i(TAG, "onUnityAdsStart "+s);
            unityReady = true;
        }

        @Override
        public void onUnityAdsFinish(String s, UnityAds.FinishState finishState) {
            if (finishState.compareTo(UnityAds.FinishState.COMPLETED) == 0) {
                onAdReward(); //my callback for reward
            } else if (finishState.compareTo(UnityAds.FinishState.SKIPPED) == 0) {
                onAdClosed(); //my callback for ad close
            } else if (finishState.compareTo(UnityAds.FinishState.ERROR) == 0) {
                onAdError(finishState.toString()); //my callback for errors
            }
        }

        @Override
        public void onUnityAdsError(UnityAds.UnityAdsError unityAdsError, String s) {
            onAdError(unityAdsError.toString()); //my callback for errors, here results INVALID_ARGUMENT error
        }
    });
}

有谁知道怎么回事?提前致谢

【问题讨论】:

  • 检查unityAdsError是否有getMessage()或者检查其他参数String s。
  • @RajSuvariya 好的,谢谢。通过记录 s 参数,它表明我使用我的应用程序 ID 作为展示位置 ID :( 你想回答吗?我会接受

标签: java android unityads


【解决方案1】:

如果您仔细检查回调,onUnityAdsError 有 2 个参数,第一个提供错误代码,第二个参数提供有关问题的信息。

@Override
public void onUnityAdsError(UnityAds.UnityAdsError unityAdsError, String reason) {
     onAdError(unityAdsError.toString()); //my callback for errors, here results INVALID_ARGUMENT error
}

所以只需检查原因,您应该能够找出集成中出了什么问题。

【讨论】:

    猜你喜欢
    • 2017-01-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-09-28
    相关资源
    最近更新 更多