The two main roles Advertising SDKs perform are: This is actually the simplest way to auto-play a video, but it has a significant drawback because it is impossible to define a click on the video.
That is, users cannot click the video and be redirected to the advertiser's website.
To explain the need for MRAID, we need to examine the two main use cases in which ads are shown on mobile devices; Mobile Web and In-App.
There is a fundamental difference in the technologies involved in both cases, and that difference creates the need for MRAID.
The creative is displayed in a container called a Web View, which is a fully functional, ad sized web page that is running HTML5 and Java Script: In this case, the creative and the container it's running in (the app) cannot speak to each other, because the creative only speaks HTML5/JS and the app only speaks Objective-C or Java. MRAID defines a set of commands that allows the creative to use Java Script to communicate with the native code of the app and ask it to perform various actions.
The diagram below illustrates the relationship between the creative that is using HTML5/JS, MRAID, and the app that is running in native code.
The reason for this drawback is that using MRAID to play a video opens the video in the device's native player, which is not a web page and therefore does not support clicks.
This is why when you click a video being played using MRAID, you see the player controls.
He was greatest fella I've ever had."Yesterday, Mr Settelen, 44, referred questions about the tapes to Marcus Rutherford, his solicitor.
The main functionality of MRAID is to allow a creative that is running on In-App inventory to change its size, get information about its position on the screen and about the screen size.
There are additional functions that allow the creative to store photos in the device memory, create a calendar event, and access the native video player.
In-app inventory is fundamentally different from mobile web, because the app in which the the creative is displayed is not running HTML5 and Java Script.
Instead, it is running the native code of the devices operating system (Objective-C for i OS, Java for Android).