Технические характеристики рекламы на Flash-баннере

#flash #actionscript-2 #ads #specs

#flash #actionscript-2 #реклама #технические характеристики

Вопрос:

В основном в своей работе я занимаюсь flash-баннерами. Часто я использую MediaMind или DoubleClick, однако, очевидно, что бывают случаи, когда мне нужно разработать рекламу в соответствии с требованиями определенных издателей, таких как NineMSN и Yahoo!

У каждого из них разные спецификации для своего «clickTag». clickTag — это, по сути, просто имя переменной, которая анализируется во flashvars и содержит URL-адрес перехода, когда люди нажимают на рекламу.

Вот некоторые из них, которые уже готовы:

 clickTag
clickTAG
_root.clickTag
_level0.clickTag
  

И любая комбинация из вышеперечисленных (т. Е. другой корпус и т.д.).

Я решил, что в этом _root и _level0 нет необходимости, поэтому я их удалил. Затем один из издателей взорвал меня, сказав, что ярлык был неправильным (потому что я удалил _root спереди). Она использовала какой-то онлайн-инструмент, который позволял им просматривать actionscript, примененный к кнопке, на самом деле они не тестировали рекламу в своей системе, чтобы увидеть, работает ли она.

Итак, вопрос 1: я почти уверен, что _root.var , _level0.var и var — это одно и то же (очевидно, из _root / основной временной шкалы). Если, возможно, это не может быть проанализировано через flashvars таким образом, чтобы переменная была доступна только через _level0 или _root (вы не можете этого сделать, насколько я знаю).

Вопрос 2: Еще одна вещь, на которую я обратил внимание, заключалась в применении клика на временной шкале, а не непосредственно к самой кнопке (я ненавижу размещать какой-либо код непосредственно на объекты).). Вот так:

 btn.onRelease = function():Void
{
    getURL(clickTag, "_blank");
}
  

Вместо того, чтобы это помещалось на саму кнопку:

 on(release)
{
    getURL(clickTag, "_blank");
}
  

Я тоже не понимаю, как здесь может быть разница, или она есть?

Мой последний вопрос таков: я трачу час на создание 12 копий объявлений 3 разных размеров в двух разных стилях, чтобы применить соответствующий ярлык к каждому из баннеров для отправки напрямую издателям. Почему я не могу просто создать один подобный супер-клик-тег?

 var clicktags:Array = [clickTag, clickTAG, uncommonClickTag];
btn.onRelease = function():Void
{
    var i:Number = 0;
    for(i; i<clicktags.length; i  )
    {
        var s:String = clicktags[i];

        if(s != undefined)
        {
            getURL(s, "_blank");
            break;
        }
    }
}
  

Ответ №1:

Вопрос 1: Вы совершенно правы, а ваша коллега-издатель ошибается, однако она (работает на) босса и, вероятно, не обладает пониманием, необходимым для принятия вашего решения. Для нее безопаснее запустить баннер через какой-нибудь непрозрачный инструмент и получить одобрение, в то время как просить своего босса принять ваши идеально оформленные «нарушения» определенно «раскачивает лодку».

Кроме того, можете ли вы быть абсолютно уверены, что ваш баннер не будет загружен в другой swf (нарушение _rootless кода)? Возможно, это маловероятно, но если что-то может пойти не так…

И, наконец, вопрос 3 делает все это спорным, как вы увидите. Да, вы действительно можете сделать что-то вроде вашего фрагмента кода, но вам придется использовать строки для имен flashvar и выполнить неопределенный тест для значения тега, полученного из _root[flashVarNameString], вот так:

 var clicktags:Array = ["clickTag", "clickTAG", "uncommonClickTag"];
btn.onRelease = function():Void
{
    var i:Number;
    for(i; i<clicktags.length; i  )
        {
        var s:String = clicktags[i];
        var tagVal:String = _root[s];

        if(tagVal != undefined)
            {
                getURL(s, "_blank");
                break;
            }
        }
    }
  

Комментарии:

1. Мне нравится, что вы учли, что баннер мог быть помещен в другой SWF-файл. Понятия не имею, почему я об этом не подумал. Если это так; тогда я должен быть в состоянии просто всегда использовать _root, как в вашем примере. Спасибо за это.

2. PS Я не могу назначить награду в течение 6 часов, поэтому я сделаю это, когда смогу.

Ответ №2:

кроме того, ваш последний фрагмент кода, в котором выполняется поиск по разным тегам, также может не дать бедной девушке добро от ее инструмента проверки баннеров (говорю по опыту! ;o) ).

Ответ №3:

По моему опыту, следующий фрагмент работает для нескольких переменных названий клик-тегов и намного короче и проще:

 btn.onRelease = function():Void
{
    var url = (_root.ClickTag || _root.clickTag || _root.clicktag || _root.clickTAG || _root.ClickTAG);
    if (url.substr(0,4) == "http") {
        getURL(url, "_blank");
    }
}
  

Тот же код можно использовать для экземпляра кнопки:

 on (release)
{
    var url = (_root.ClickTag || _root.clickTag || _root.clicktag || _root.clickTAG || _root.ClickTAG);
    if (url.substr(0,4) == "http") {
        getURL(url, "_blank");
    }
}
  

Я никогда не рассказываю об этом своим клиентам или руководителям проектов, просто потому, что они не поймут.