2015-03-12 34 views
6

Przekonwertowałem plik flash AS2 na HTML5 za pomocą Swiffy. Korzystam też z DoubleClick Studio dla reklamy. Zastanawiam się, jak uzyskać kliknięcie reklamy, aby wyświetlało się ono w DoubleClick Studio w sekcji Zdarzenia i mogę edytować docelowy adres URL.DoubleClick Studio ClickTag po użyciu Swiffy

Dzięki!

+0

Yo, mają u kiedykolwiek zrozumieć to? –

Odpowiedz

0

Jedynym sposobem wokół to (przynajmniej z tego co znalazłem) jest najpierw załadować API DoubleClick HTML (https://www.google.com/doubleclick/studio/docs/sdk/html5/en/class_studio_Enabler.html), a następnie albo ....

  1. aby cały Swiffy Object klikalne z w HTML/JS przy użyciu JavaScript i wywoływanie Enabler.exit(), gdy użytkownik kliknie reklamę Użyj ExternalInterface, aby wywołać metody JavaScript z Flash/Swiffy. Następnie utwórz metodę JavaScript, która po kolei wywołuje Enabler.exit().

3

Niestety jedynymi narzędziami Google DoubleClick Studio pozwala na HTML5 baner authoringu jest Google Web Designer. Zobacz sekcję "Porady Studio" na stronie documentation.

UPDATE: Adobe Edge Animowane i ręcznie kodowane reklamy są teraz obsługiwane.

AKTUALIZACJA: Próbowałem tego i DID pozwolił mi kontrolować adres URL wyjścia z DoubleClick Studio i śledził wyjście w konsoli wyjściowej.

Otwórz plik HTML można uzyskać, gdy Eksportuj jako HTML5 (Swiffy) dodać Studio Enabler do głowy dokumentu

<script src="https://s0.2mdn.net/ads/studio/Enabler.js"> </script> 

owinąć <div id="swiffycontainer"> z <div id="bg-exit"> EX:

<div id="bg-exit"> 
<div id="swiffycontainer"></div> 
<div> 

Dodaj następujące style CSS, aby ustawić wymagany przezroczysty przycisk:

#bg-exit { 
  background-color: rgba(255,255,255,0); 
  cursor: pointer; 
  height: 100%; 
  left: 0px; 
  position: absolute; 
  top: 0px; 
  width: 100%; 
} 

Następnie dodaj następujący skrypt, aby dodać wymagane wyjście. To musi być na dole dokumentu.

<script> 
function bgExitHandler(e) { 
    Enabler.exit('Background Exit'); 
} 

document.getElementById('bg-exit').addEventListener('click', bgExitHandler, false); 
</script> 

Cały powyższy kod znajduje się w documentation, po prostu wykonaj kolejne kroki. Dostępne są dodatkowe opcje, takie jak pageLoadHandler, ale pozwoli to osiągnąć cel, jakim jest możliwość edycji adresu URL z poziomu studio.

Ponieważ była to tylko kopia, nie jest to zbyt trudne do wykonania i jestem pewien, że można utworzyć fragment kodu, aby przyspieszyć działanie.

+2

'Niestety, jedynym narzędziem Google DoubleClick Studio umożliwiającym tworzenie banerów HTML5 jest Google Web Designer. Zobacz sekcję "Porady Studio" w dokumentacji. "To nie jest teraz - możesz napisać swój własny kod za pomocą edytora tekstu lub użyć programu Adobe Edge Animate - [patrz tutaj] (https://support.google.com/ richmedia/answer/2672542? vid = 1-635776123601081518-1301142788). Reszta powyżej jest prawidłowa, wierzę. – fastasleep

+0

Dzięki. Masz poprawny, odręczny kod i Edge Animate są obsługiwane. – MagRat

+0

Hi @MagRat i @fastasleep, czy wiesz, że identyfikator elementu absolutnie MUSI być nazwany 'bg-exit' (w DIV i gdzie jest wywoływany przez' getElementById (...) ') lub czy to nie ma znaczenia, tak długo jak mecz? Czy parametr ciąg 'Enabler.exit (...)' ma znaczenie jak jest wywoływany? Wcześniej widziałem "Wyjście w tle", takie jak MagRat użyte tutaj, ale niektóre inne odpowiedzi tutaj po prostu używają "Wyjścia". Wiesz cokolwiek o tym? – bigp

6

Rozwiązanie jest bardzo proste. Spójrz na mój przykład. Adres docelowy można zaktualizować w DB Studio.

HTML:

<!DOCTYPE HTML> 
<html lang="en-US"> 
<head> 
    <meta charset="UTF-8"> 
    <title>HTML5 Banner</title> 
    <meta name="ad.size" content="width=300,height=250"> 
    <link rel="stylesheet" type="text/css" href="styles.css" media="all"> 
    <script src="https://s0.2mdn.net/ads/studio/Enabler.js"></script> 
    <script src="https://www.gstatic.com/swiffy/v7.2.0/runtime.js"></script> 
    <script src="object.js"></script> 
    <script src="script.js"></script> 
    <script type="text/javascript"> 
     var clickTag = "http://www.example.com"; 
    </script> 
</head> 
<body> 
    <div id="swiffycontainer"></div> 
    <div id="bg-exit"></div> 
</body> 
</html> 

script.js:

var stage; 
if (!Enabler.isInitialized()) { 
    Enabler.addEventListener(
     studio.events.StudioEvent.INIT, 
     enablerInitialized 
    ); 
} else { 
    enablerInitialized(); 
} 
function enablerInitialized() { 
    if (!Enabler.isVisible()) { 
     Enabler.addEventListener(
      studio.events.StudioEvent.VISIBLE, 
      adVisible 
     ); 
    } else { 
     adVisible(); 
    } 

} 
function adVisible() { 
    document.getElementById('bg-exit').addEventListener('click', exitHandler, false); 
    stage = new swiffy.Stage(document.getElementById('swiffycontainer'), swiffyobject, {}); 
    stage.start(); 
} 
function exitHandler(e) { 
    Enabler.exit('Exit'); 
    window.open(window.clickTag); 
} 

object.js:

var swiffyobject = {YOUR_SWIFFTY_OBJECT_HERE}; 

styles.css:

* { 
    border:0; 
    padding:0; 
    margin:0; 
} 

body, html { 
    width:100%; 
    height:100%; 
    overflow:hidden; 
    background:#fff; 

    width:100%; 
    height:100%; 

    position:relative; 
} 

#bg-exit { 
    position:absolute; 
    z-index:999999; 
    left:0; 
    top:0; 
    width:100%; 
    height:100%; 
    overflow:hidden; 
    cursor: pointer; 
} 

#swiffycontainer { 
    position:absolute; 
    z-index:100; 
    width:100%; 
    height:100%; 
    overflow:hidden; 
} 
+1

Nie jestem pewien, czy działało to poprawnie ze starym kodem aktywatora, ale z aktualną wersją modułu włączającego (w czasie pisania), 'Enabler.exit ('Exit');' i 'window.open (window.clickTag) ; 'wewnątrz funkcji' exitHandler' zderza się i spowodowało otwarcie 2 nowych kart. Pozbycie się 'window.open (window.clickTag);' i po prostu użycie 'Enabler.exit ('Exit');' wydaje się rozwiązać problem (jest to testowane w Doubleclick Studio z parametrem clickTag zdefiniowanym przez Studio. wewnątrz skryptu) – kevinMario

+1

@kevinMario^Uważam, że jest to poprawne, o ile wiem, Enabler.exit powinien zająć się wcześniej potrzebnymi parametrami clickTag, więc są one zbędne. W mojej kopanie informacji na ten temat, nie mogę znaleźć żadnej aktualnej dokumentacji dla window.clickTag rzeczy w ogóle w KAŻDYM dokumencie Google, ale widzę instrukcje Enabler.js po strukturze Enabler.exit ("nazwa wyjścia") na pewno . – fastasleep

+0

@fastasleep yup, również zapomniałem o tym wspomnieć, ponieważ reklama otworzyła 2 nowe karty w tym samym czasie (jedna jest pusta, a druga jest podanym adresem URL clickTag), kreacja została zablokowana przez niektóre funkcje adblocker/popupblocker - więc to jest bardzo szkodliwe dla postępów twojej kampanii. Odpowiedziałem na [inny wątek ze zaktualizowaną wersją tego kodu] (http://stackoverflow.com/questions/32363888/exit-url-on-converted-swf-with-swiffy/), który został przetestowany i jest działa dobrze z DCS/DFP – kevinMario