问题标签 [mraid]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
379 浏览

android - MoPub MRAID 安卓

在我正在开发的 android 应用程序中,我已成功添加 MoPubView 和 MoPubInterstitial 并与 Google 的 AdMob 集成。MoPub 文档上有一条注释,我们应该管理权限(无论是否允许 WRITE_EXTERNAL_STORAGE)。MRAID 需要此权限。据我了解,MRAID 广告可以在 MoPubInterstitial 中显示为视频,并且客户端允许显示 MRAID。如果用户与 MRAID 内容交互,我不会让应用程序崩溃。

如何检查 MRAID 是否已加载以及运行时权限对话框的放置位置,因为当前的实现没有给我任何选择。

我找不到任何 MRAID 实现的例子或任何东西。MoPub 要求在 AndroidManifest 中列出与 MRAID 相关的视图和活动。

显现:

主要活动

0 投票
0 回答
606 浏览

javascript - 我可以在应用内广告中访问来自 iPhone 陀螺仪的数据吗?

我开发广告,最近遇到了一个有趣的问题。我正在尝试制作一个广告,该广告使用 iPhone 陀螺仪在用户移动手机时围绕全景图像移动。我正在制作的广告作为 HTML5 iframe 插入到应用程序中。当 iframe 在浏览器上时一切正常,但在应用程序的 iframe 中,陀螺仪和加速度计似乎什么都不做。我可以使用 MRAID 和 Admob 方法,但我不确定实现目标的最佳方法。我听说过一些相互矛盾的事情,例如 iOS 限制了广告中的陀螺仪数据,但我认为这是不正确的。如果有人对此有任何经验,我将不胜感激。只是试图从 web 视图中连接到陀螺仪。

谢谢你。

0 投票
1 回答
303 浏览

.htaccess - 在层次结构中的任意位置重定向文件

因此,显然一些移动广告会在其页面加载中放弃对 mraid.js 的请求。这对我来说感觉很荒谬,但我对此无能为力。它看起来像这样:

如果页面是 /something,则请求以 /something/mraid.js 的形式出现

但对于 /something/else/mraid.js 之类的情况,这种情况也会继续存在

无论 URL 是什么,它都附加在 mraid.js 上。

我在 .htaccess 文件中添加了如下几行:

或者

或者

希望将它们重定向到全局(和空白)mraid.js 文件。这只是为了加载一个文件以阻止分析中的 404 错误,据我所知,当需要 mraid.js 时,它是从移动广告/应用程序中本地加载的。

但是这些 .htaccess 规则似乎都没有像我预期的那样捕获和重定向。关于如何始终在 URL 中匹配 mraid.js 并将其传递回 root 的任何想法?

0 投票
1 回答
675 浏览

google-dfp - 使用 MRAID 的 DFP 插页式广告

我为 iOS 的全屏广告创建了一个新模板 (creative-template-2.html)。它包括根据设备屏幕缩放图像并自动关闭广告的逻辑。

在 iOS 模拟器中可以成功获取广告,但缩放图像和关闭广告逻辑不起作用。我不知道如何在 iOS 模拟器中调试 MRAID。

所以我创建了一个本地 html 来通过删除 mraid.js 和相关函数来测试逻辑。它适用于谷歌 Chrome 浏览器。

有谁知道我在创意模板中的 js 脚本有什么问题?谢谢您的帮助。

localAdTest 结果 在此处输入图像描述

localAdTest.html

iOS 模拟器广告结果 在此处输入图像描述

创意模板

0 投票
0 回答
510 浏览

javascript - 在 iframed 广告中使用 mraid.js

我们在使我们的 html iframe 广告 mraid 兼容时遇到了一些问题。我们想做的是让一个“相对简单”的 HTML 广告在应用程序和浏览器中都能正常工作(我们希望在 mraid 可用时使用 mraid.open,如果不可用则使用 window.open)。

我们当前的广告代码由 iframe 的 javascript document.write 和我们托管的 html 源代码组成。我们不控制执行 javascript 标记的域,也不创建实际广告的 HTML 源(尽管我们可以对其进行修改,例如包含额外的脚本)(我们也不能对 HTML 施加某种类型的要求)。

为了使我们的广告 mraid 兼容,我们需要在广告中包含“mraid.js”。因为“实际广告”iframe 的来源托管在我们的域中,所以在广告的 html 中包含 mraid.js 没有多大意义,因为这将指向我们域中的某些 mraid.js 版本。

这就是为什么我们必须在我们的标签中包含“mraid.js”的原因(它在“另一个域上”的 iframe 中执行,其中 mraid.js 的特定实现可能可用。这导致了实际问题,“实际由于跨域安全问题,ad" iframe 无法访问生成的 mraid 对象。

我用谷歌搜索了很多,试图弄清楚其他人是如何处理这个问题的,但我几乎一无所获,这就是为什么我认为我们可能会做一些奇怪的事情。是否有其他方法可以包含 html 横幅而不将其放入自己的 iframe 中?我曾想过 document.write 将 html 文件本身写入“其他域”iframe,尽管这需要我们将 html 内的任何相对链接更新为绝对链接(这似乎不可能 100% 可靠地完成)。

据我所知,不可能让 mraid 对象可用于我们的 iframe(?),这就是为什么我能想到的另一个解决方案是制作我们自己的“mraid”接口,它允许“他们的”iframe 的 mraid 和“我们的”iframe。然而,对于我希望的小问题来说,这似乎是一个相当大的解决方案。

如果maid接口是要走的路,有人可以解释如何有效地设置它吗?我目前的想法是,在我的 html 源代码中,我需要实现 mraid.js 中可用的每个方法,并为每个方法执行特定的 postMessage() 到执行“真正的 mraid”方法的父窗口(如果 mraid可用)并使用另一个 postMessage() 将任何潜在结果返回给我们的 iframe。

任何建议将不胜感激。

0 投票
1 回答
731 浏览

javascript - 如何在 android 中实现 mraid.js MRAID 3.0?

在 android 中实现符合 MRAID 的广告是否需要任何标准的 mraid.js 文件,或者我是否需要通过阅读 MRAID 3.0 规范来实现我自己的 mraid.js?

0 投票
1 回答
33 浏览

html - Html 5 视频标签,右上角的计时器

我正在尝试为视频添加倒数计时器。

0 投票
0 回答
61 浏览

javascript - MRAID - 插页式 - 如何防止 css 动画和内嵌视频在广告出现之前播放?

当用户从不同的标签返回“主页”时,插页式广告应该出现在移动应用程序中。

我遇到的问题是,即使广告的动画和视频尚未出现,它也会开始播放。因此,当用户看到广告时,动画和视频已经结束。我想阻止它们在它出现之前启动。

我设法在Android上解决了这个问题,但它似乎不适用于IOS。以下是部分代码:

谢谢!