plus.ad.setSplashAd 方法失效 uni-app
plus.ad.setSplashAd 方法失效 uni-app
| 项目信息 | 描述 |
|---|---|
| 产品分类 | uniapp/App |
| PC开发环境操作系统 | Windows |
| PC开发环境操作系统版本号 | 版本 10.0.22621 版本 22621 |
| HBuilderX类型 | 正式 |
| HBuilderX版本号 | 4.65 |
| 手机系统 | 全部 |
| 手机厂商 | 华为 |
| 页面类型 | vue |
| vue版本 | vue3 |
| 打包方式 | 云端 |
| 项目创建方式 | HBuilderX |
测试过的手机
华为mate60
操作步骤
- 必现
预期结果
- 第一次开屏广告消失
实际结果
- 第一次开屏广告出现
bug描述
开屏广告,传递false仍然出现
部分app.vue中的代码如下。
splashEnable()
.then(({data}) => {
// #ifdef APP-PLUS
// # vip 不显示广告 || 不是vip且浏览次数>0不显示广告
// true - 表示开启开屏广告; false - 表示关闭开屏广告。
plus.ad.setSplashAd(data == 'Y');
// #endif
}).catch(res => {
// #ifdef APP-PLUS
// # vip 不显示广告 || 不是vip且浏览次数>0不显示广告
// true - 表示开启开屏广告; false - 表示关闭开屏广告。
plus.ad.setSplashAd(isEnableSplashAd);
// #endif
})
第一次启动,当plus.ad.setSplashAd的参数值为false值时,会出现一次广告。
第二次启动,仍然是false,广告消失。
为什么第一次启动会出现广告?
更多关于plus.ad.setSplashAd 方法失效 uni-app的实战教程也可以访问 https://www.itying.com/category-93-b0.html
1 回复
更多关于plus.ad.setSplashAd 方法失效 uni-app的实战教程也可以访问 https://www.itying.com/category-93-b0.html
根据你的描述,这是plus.ad.setSplashAd方法在首次启动时的典型行为。问题可能源于以下原因:
-
首次启动时机问题:在应用首次冷启动时,系统可能已经初始化了开屏广告的展示流程,此时调用
setSplashAd(false)可能无法及时拦截首次广告加载。广告模块的初始化可能早于你的异步请求完成。 -
云端打包配置:检查
manifest.json中是否配置了开屏广告。如果云端打包时勾选了开屏广告,首次启动会强制展示,后续才受setSplashAd控制。 -
异步延迟:你的
splashEnable()是异步请求,在响应返回前广告可能已经触发。建议在应用启动早期(如onLaunch中)同步设置初始状态,例如:// 在异步请求前先禁用 plus.ad.setSplashAd(false);

