明l天
明l天
  • 发布:2020-02-17 20:23
  • 更新:2020-07-03 09:12
  • 阅读:4856

uni-AD广告问题

分类:uni-app

使用官方示例

<!-- App平台 示例 1 -->  
    <view class="ad-view">  
      <ad adpid="1111111111" @load="onload" @close="onclose" @error="onerror" @downloadchange="ondownloadchange"></ad>  
    </view>  
<!-- App平台 示例 3 (手动请求广告数据 仅App平台支持) -->  
    <view>  
      <button @click="getAdData">Get ad data</button>  
    </view>  
    <view class="ad-view">  
      <ad :data="adData"></ad>  
    </view>

示例1正常显示
示例3手动获取,有返回值,页面没反应,打印值如下

{  
    "ads": [{  
        "imgWidth": 0,  
        "imgHeight": 0,  
        "provider": "gdt",  
        "sourceId": 0,  
        "title": "快手",  
        "description": "手机垃圾已满,严重影响运行速度,上快手学习一下吧",  
        "actionType": "other",  
        "__id": 218509360,  
        "showMode": "other"  
    }]  
}

要手动渲染吗?

我复制的官方示例代码

<template>  
    <view class="content">  

        <!-- App平台 示例 1 -->  
        <view class="ad-view">  
            <ad adpid="1720902665" @load="onload" @close="onclose" @error="onerror" @downloadchange="ondownloadchange"></ad>  
        </view>  

        <!-- App平台 示例 3 (手动请求广告数据 仅App平台支持) -->  
        <view>  
            <button @click="getAdData">Get ad data</button>  
        </view>  
        <view class="ad-view">  
            <ad :data="adData"></ad>  
        </view>  
    </view>  
</template>  

<script>  
    export default {  
        data() {  
            return {  
                adData: {}  
            }  
        },  
        methods: {  
            getAdData: function(e) {  
                // 仅APP平台支持  
                plus.ad.getAds({  
                        adpid: '1720902665', // dcloud 后台创建  
                        count: 1, // 广告数量,默认 3  
                        width: 300 // 根据宽度获取合适的广告(单位px)  
                    },  
                    (res) => {  
                        console.log(res);  
                        this.adData = res.ads[0];  
                    },  
                    (err) => {  
                        console.log(err);  
                    }  
                )  
            },  
            onload(e) {  
                console.log("onload");  
            },  
            onclose(e) {  
                console.log("onclose: " + e.detail);  
            },  
            onerror(e) {  
                console.log("onerror: " + e.detail.errCode + " message:: " + e.detail.errMsg);  
            },  
            ondownloadchange(e) {  
                console.log("downloadchanged: " + JSON.stringify(e.detail));  
            }  
        }  
    }  
</script>  

<style>  
  .content {  
    background-color: #DBDBDB;  
    padding: 10px;  
  }  

  .ad-view {  
    background-color: #FFFFFF;  
    margin-bottom: 10px;  
  }  
</style>

示例1正常,示例3 点击Get ad data按钮后,有返回值,广告未展示

2020-02-17 20:23 负责人:无 分享
已邀请:
DCloud_uni-ad_HDX

DCloud_uni-ad_HDX

测试没有问题,请提供完整示例代码或参考下面代码

<template>  
    <view>  
        <!-- App平台 示例 3 (手动请求广告数据 仅App平台支持) -->  
        <view>  
            <button @click="getAdData">Get ad data</button>  
        </view>  
        <view class="ad-view">  
            <ad :data="adData"></ad>  
        </view>  
    </view>  
</template>  

<script>  
    export default {  
        data() {  
            return {  
                adData: null  
            }  
        },  
        methods: {  
            getAdData: function(e) {  
                // 仅APP平台支持  
                plus.ad.getAds({  
                        adpid: '1111111111', // dcloud 后台创建  
                        count: 1, // 广告数量,默认 3  
                        width: 320 // 根据宽度获取合适的广告(单位px)  
                    },  
                    (res) => {  
                        this.adData = res.ads[0];  
                        console.log(this.adData);  
                    },  
                    (err) => {  
                        console.log(err);  
                    }  
                )  
            },  
        }  
    }  
</script>  

<style>  
    .ad-view {  
        background-color: #FFFFFF;  
        margin-bottom: 10px;  
    }  
</style>  
  • 明l天 (作者)

    我又编辑了,你看下。

    我复制你提供的代码也是一样的问题, 点击Get ad data按钮后,有返回值,但广告未展示

    2020-02-18 13:52

DCloud_uni-ad_HDX

DCloud_uni-ad_HDX

HBuilder 基座 还是 自定义基座?

  • 明l天 (作者)

    自定义基座

    2020-02-18 23:02

DCloud_uni-ad_HDX

DCloud_uni-ad_HDX

把你的工程传上来,仅需要广告页面

  • 明l天 (作者)

    您好,有结果了吗

    2020-02-21 12:24

  • 明l天 (作者)

    您好,怎么样了

    2020-02-25 18:01

明l天

明l天 (作者)

代码

DCloud_uni-ad_HDX

DCloud_uni-ad_HDX

直接运行你的工程报错,有个图片找不到,移除后,广告可以正常显示

DCloud_uni-ad_HDX

DCloud_uni-ad_HDX

你先别用自定义基座,用 HBuilder 基座,adpid:1111111111

  • 明l天 (作者)

    用 HBuilder 基座,手动请求广告可以。自定义基座还是不行,是因为下边那个报错冲突吗?

    2020-02-26 16:05

  • 明l天 (作者)

    链接:https://pan.baidu.com/s/1buSuG0m3eyJrrGEZq7wNNQ

    提取码:0ag0

    前端所有代码,麻烦您帮忙看下,谢谢

    2020-02-26 17:08

明l天

明l天 (作者)

自定义基座不行

DCloud_uni-ad_HDX

DCloud_uni-ad_HDX

新建个空工程,拷贝文档中的示例代码,用自定义基座测试

注意:自定义基座要用 DCloud 后台申请的 adpid

  • 明l天 (作者)

    不行,增强广告需要再uni-ad后台申请后才能用。新建的工程都不具备申请条件

    2020-02-27 19:38

  • DCloud_uni-ad_HDX

    回复 明l天: 文档示例代码中有 HBuilder 基座测试 ID

    2020-03-09 18:47

8***@qq.com

8***@qq.com

我这边也是广告无法显示,用HBuilder 基座 adpid: '1111111111' 页面无反应,用自定义基座用自己申请过了的广点通id 页面无反应,但是手动请求有返回值, 开屏广告显示正常,显示了腾讯的广告的,就是 页面内广告无法显示,也按照前一个用户的问题试了一遍,除了手动请求后返回值,其他的页面均无反应

8***@qq.com

8***@qq.com

运行官方示例,依然页面无反应

8***@qq.com

8***@qq.com

找到原因了,为啥子我加上这两段代码就成功了

8***@qq.com

8***@qq.com

<!--#ifdef APP-PLUS---->
<ad adpid="1709368424"></ad>
<!--#endif-->

这样子页面也渲染不出来

8***@qq.com

8***@qq.com

app中 ad组件层级较高,会遮挡position:fixed出来的组件,请问有什么方法解决,谢谢

8***@qq.com

8***@qq.com

广点通激励视频,报错 -5007 是什么意思

8***@qq.com

8***@qq.com

信息流广告没有问题,能正常显示和使用,但是激励视频一直不行,我无论是用自定义基座还是云打包上线,激励视频广告都无法用,而且还导致应用闪退,按照案例代码写的也没有报错,就提示我截图所示,但是我用官方的基座又可以正常使用激励视频广告,很奇怪

8***@qq.com

8***@qq.com

广告返回如下

8***@qq.com

8***@qq.com

1.ios 广告无法加载,无论是自定义基座还是testFlight后下载下来的应用,都是提示 "-5005"广告加载失败,请尝试重新加载 ,但是我改成官方基座,用adpid="1111111111",正常加载广告,
2.安卓平台已经没有问题了,信息流广告和激励视频都正常,

  • 8***@qq.com

    搞定了,是因为ios没有上架,然后重新在dcloud后台重新申请ios的广告

    2020-03-20 17:52

兔子RabBit

兔子RabBit

前端代码中 adpid 是写死的吗?

该问题目前已经被锁定, 无法添加新回复