Я заметил, что когда есть медиа-файл с VPAID, указанным в качестве apiFramework, элемент Icon не работает. VPAID JS также возвращает false для метода getAdIcons ().
Я проверил это в Google VAST Inspector, чтобы подтвердить это.
Однако, если VAST XML не содержит элемент VPAID MediaFile, значок отображается без проблем.
<?xml version="1.0" encoding="UTF-8"?>
<VAST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
version="3.0" xsi:noNamespaceSchemaLocation="vast.xsd">
<Ad>
<InLine>
<AdSystem>Test</AdSystem>
<AdTitle>Testing</AdTitle>
<Creatives>
<Creative>
<Linear>
<Duration>00:00:15</Duration>
<TrackingEvents />
<VideoClicks/>
<MediaFiles>
<MediaFile apiFramework="VPAID" type="application/javascript">http://example.com/test.js</MediaFile>
</MediaFiles>
<Icons>
<Icon program="Amazon3" width="19" height="20"
xPosition="right" yPosition="top" duration=""
offset="00:00:00" apiFramework="VAST">
<StaticResource creativeType="image/png">
<![CDATA[ http://placehold.it/96x15 ]]>
</StaticResource>
<IconClicks>
<IconClickThrough>
<![CDATA[ https://www.google.com/ ]]>
</IconClickThrough>
</IconClicks>
<IconViewTracking>
<![CDATA[ https://www.google.com/ ]]>
</IconViewTracking>
</Icons>
</Linear>
</Creative>
</Creatives>
</InLine>
</Ad>
</VAST>