InteractiveAdvertisingBureau / SIMID

Secure Interactive Media Interface Definition (SIMID)
https://interactiveadvertisingbureau.github.io/SIMID/
Apache License 2.0
46 stars 25 forks source link

new API request - requestOpenTab #299

Closed ryanthompson591 closed 4 years ago

ryanthompson591 commented 5 years ago

Edit: We want the api to be called requestNavigation(link - string parameter)

The link could be a web page or an app/play store link.

Other requested change: In init EnvironmentData add another field.

navigationSupport which takes an enum

CREATIVE_HANDLES - The creative should open tabs in response to user navigation. PLAYER_HANDLES - The creative should use the requestNavigation API. Creatives aren't required to do this, but it will be a better user experience on mobile and other devices. NOT_SUPPORTED - In this environment, the creative cannot do clickthrough.

This enum will tell the creative how it should handle user clicks.


For any type or user interaction on mobile. There should be an api that allows the creative to request that a web browser opens a url in a tab.

Use case: On mobile, an end card has a list of links. The user clicks on one of the links that leads to a url.

gasperk commented 5 years ago

Wouldn't the creative just call window.open() to achieve this? Why go through the player? You lose user-initiated flag in some browsers that way, which effectively prevents you from opening a new window.

ryanthompson591 commented 5 years ago

That will open the site in the webview rather than a new browser window, which I think is the desired effect.

ryanthompson591 commented 5 years ago

This is something we agree should happen. Please don't close. This will need to be readressed in simid 1.1.

sanils commented 4 years ago

This would specifically come up for mobile app sdks where video playback is handled natively (in iOS or Android) but the UI is shown in a webview. In such cases the SIMID creative would be shown inside the webview but it is undesirable to have the window.open() call to redirect the webview to the clickthrough page. Instead it would be better if the simid_creative requested the player to open the URL, which communicated that up to the native layer and then a new webview or browser window was opened in the app. From a user perspective this would be the ideal behavior so they can navigate back to their original app to continue playback of the ad.