Начало работы с Vungle (SDK v.1.0 - v.4.1): подключаемый модуль Unity

Это руководство поможет вам быстро интегрировать подключаемый модуль Unity для Vungle в обычное приложение. Приведенный здесь код доступен в нашем публичном репозитории на GitHub.

Содержание

  1. Перед началом работы
  2. Устанавливаем подключаемый модуль Unity для Vungle
  3. Добавляем код!
  4. Запускаем пример приложения Vungle
  5. Как экспортировать проект Xcode в Windows

Перед началом работы...

    1. Подключаемый модуль Vungle Unity требует наличия Java 1.7 для Android и поддерживает iOS 7+.

      ВАЖНО! В Unity версий 5.3 и 5.3.1 имеется ошибка, не дающая компилировать приложения с Unity в Windows 8.1. Unity выпустила патч, устраняющий эту проблему. Рекомендуем использовать следующие версии: 5.3.1p1, 5.3.1p2 и 5.3.1p3. НЕ ИСПОЛЬЗУЙТЕ ВЕРСИИ UNITY 5.3 И 5.3.1!

    2. Подключаемый модуль Unity для Vungle:
      - в iOS поддерживаются Unity 4 и Unity 5.4.1 или выше.
      - в Android поддерживается как Unity 5, так и Unity 4. 
      - в Windows (Universal 8.1 или Phone 8.1) поддерживается Unity 4 и выше.
      - в Windows (Windows 10 UWP) поддерживается Unity 5.2 и выше. 

    3. В Windows перед выполнением прочих указаний по установке подключаемого модуля Unity для Vungle следует установить SDK для Windows. Разработку для Windows можно производить только на ПК с Windows. Убедитесь, что у вас установлен Windows SDK для той платформы, которая будет использоваться в разработке:

      - Загрузка Windows SDK 8.1: https://developer.microsoft.com/en-us/windows/downloads/windows-8-1-sdk

      - Загрузка Windows SDK 10: https://developer.microsoft.com/en-us/windows/downloads/windows-10-sdk

    4. Реклама Vungle в Windows N и KN. Чтобы реклама Vungle запускалась в особых выпусках Windows N и KN, их пользователям следует установить пакет мультимедиа (Media feature pack) для выпусков Windows 10 N и KN.

    5. Для интеграции требуется учетная запись Vungle. Если у вас ее нет, создайте ее.

    6. Если вы этого еще не сделали, перейдите на панель управления и добавьте это приложение в свою учетную запись. Это необходимо для того, чтобы получить идентификатор приложения, который вы добавите в приложение с помощью нашего SDK. Идентификатор приложения отображается на странице приложения и на изображении ниже обведен красным.

      В более новых приложениях идентификатор приложения может совпадать с идентификатором API отчетности. В существующих приложениях, созданных с помощью поиска, идентификатор приложения и идентификатор API отчетности могут отличаться. (Для обеспечения взаимодействия «ключ» API отчетности отображается на странице сведений учетной записи пользователя.)

Подключаемый модуль Unity для Vungle не включен в пример кода, на который мы ссылаемся выше, поэтому его необходимо загрузить из панели управления Vungle.  Когда загрузка будет завершена...

Устанавливаем подключаемый модуль Unity для Vungle

Открыв Unity и свой проект, дважды щелкните на загруженном файле VunglePlugin.unitypackage, чтобы добавить подключаемый модуль Unity для Vungle в свое приложение.

Нажмите кнопку All («Все»), чтобы выбрать все элементы перед импортом.

Убедитесь, что в «параметрах сборки» (Build Settings) выбрана нужная платформа.

Во избежание ошибок компиляции на следующем шаге убедитесь, что в разделе Build Settings («Параметры сборки») проекта (cmd + Shift + B) выбрана платформа iOS, Android или Windows.

Для Windows

При использовании Unity 5 для Windows в SDK будет отдельный файл VungleSDK.winmd для каждой из платформ Windows. Эти файлы расположены в каталогах, названных именем соответствующей платформы. Ориентируясь по приведенному ниже рисунку, задайте следующие параметры:

На вкладке Project («Проект») выберите нужный Vungle SDK. Убедитесь, что параметры на вкладке Inspector («Инспектор») в разделах Select platforms for plugin («Выберите платформы для подключаемого модуля») и Platform settings («Параметры платформы») выставлены верно.

  • Для Assets/Plugins/metro/VungleSDKProxy.winmd:
    Platform («Платформа»): WSAPlayer
    SDK: Any SDK («Любой SDK»)
    Placeholder («Заполнитель»): Assets/Plugins/VungleSDKProxy.dll:

  • Для Assets/Plugins/metro/VungleSDK.winmd:
    Platform («Платформа»): WSAPlayer
    SDK: SDK81

  • Для Assets/Plugins/metro/UWP/VungleSDK.winmd:
    Platform («Платформа»): WSAPlayer
    SDK: UWP

  • Для Assets/Plugins/metro/WindowsPhone81/VungleSDK.winmd:
    Platform («Платформа»): WSAPlayer
    SDK: Phone SDK81

Важно! При использовании Unity версии 5.3.1 или выше в проекте под Universal 8.1 или Phone 8.1 следует отключить использование Assets/Plugins/metro/UWP/VungleSDK.winmd одним из следующих двух способов.

  • Способ 1: выберите Assets/Plugins/metro/UWP/VungleSDK.winmd и на вкладке Inspector («Инспектор») в разделе Select platforms for plugin («Выберите платформы для подключаемого модуля») снимите флажок с варианта WSAPlayer
  • Способ 2: удалите Assets/Plugins/metro/UWP/VungleSDK.winmd

При использовании Unity 4 перейдите в раздел Player settings («Параметры плеера») --> Publishing Settings («Параметры публикации») и измените следующие настройки:

  • Unprocessed Plugins («Необрабатываемые подключаемые модули»): Size («Размер») — 1
  • Element 0 («Элемент 0»): VungleSDKProxy.dll

После публикации проекта Windows в Unity убедитесь, что у вашего проекта есть возможность internetClient в среде Unity. Откройте параметры сборки (Build Settings; shift + ctrl + b) --> выберите Windows Store («Магазин Windows») в разделе Platform («Платформа») --> нажмите Player Settings («Параметры плеера»). В разделе Publishing Settings («Параметры публикации»), в меню Capabilities («Возможности»), выберите вариант InternetClient, как показано на рисунке.

Добавляем код!

В этом пошаговом руководстве мы инициализируем весь код, связанный с Vungle, в сценарии, привязанном к главному объекту игры Game Object. Однако вы можете вызывать подключаемый модуль Unity для Vungle из любых сценариев.  Лучше всего инициализировать подключаемый модуль Unity для Vungle как можно раньше, чтобы включенные пакеты Vungle SDK вовремя завершили настройку показа пользователю рекламы при вызове метода playAd.

Инициализация

Инициализация — это всего одна строка кода. Этот метод подготавливает подключаемый модуль Unity для Vungle к выводу рекламы на экран. Его необходимо вызвать только один раз. *Постарайтесь инициализировать пакет Vungle SDK в приложении как можно раньше, поскольку пакету SDK требуется 30–45 секунд, чтобы инициализироваться и кэшировать рекламу для воспроизведения*.

//Идентификаторы приложений можно найти на панели управления Vungle, на страницах приложений
Vungle.init ("Test_Android", "Test_iOS", "Test_Windows");

Показ рекламы

Воспроизведение рекламы тоже выполняется всего лишь одной строкой кода.

//Коротко и просто!
Vungle.playAd();

Метод playAd может также принимать словарь параметров, позволяющий настроить показ рекламы.

// Показывает рекламу с дополнительными параметрами. Для задания параметров используйте класс Dictionary<string,object>.
public static void playAdWithOptions( Dictionary<string,object> options );

В словаре параметров могут содержаться следующие ключи:

Ключ Описание
incentivized

Вы можете получать уведомления в случае, если пользователь просмотрел рекламу целиком. Стандартный сценарий использования этого ключа — некоторый обмен выгодами («Посмотрите это видео и получите 100 бонусов!»). При объявлении рекламы стимулированной на ваш сервер будет отправлено сообщение с предоставленным вами идентификатором пользователя, чтобы вы могли его наградить. Стимулированной реклама считается тогда, когда этот параметр имеет значение true. См. указания по настройке стимулированной рекламы.

Dictionary<string, object> options = new Dictionary<string, object> ();
options ["incentivized"] = true;
Vungle.playAdWithOptions (options);
orientation

Задает ориентацию рекламы.

  • Для iOS используйте VungleAdOrientation:
public enum VungleAdOrientation
{
    Portrait = 1,
    LandscapeLeft = 2,
    LandscapeRight = 3,
    PortraitUpsideDown = 4,
    Landscape = 5,
    All = 6,
    AllButUpsideDown = 7
}
  • В Android установите значение true для параметра matchVideo и false для параметра autoRotate.
  • В Windows установите значение true для параметра autoRotate и false для параметра landscape. (Значение по умолчанию — autoRotate.)
userTag Пользователь ключа — передается в качестве пользователя в вызове S2S (при его наличии).
placement Метаданные с информацией о размещении отдельного рекламного показа.  Используется для фильтрации показов рекламы при запросе данных отчетности по производительности приложения.
alertTitle Заголовок предупреждения, которое появляется при преждевременном закрытии стимулированной рекламы пользователем.
alertText Текст предупреждения, которое появляется при преждевременном закрытии стимулированной рекламы пользователем.
closeText Надпись на кнопке, закрывающей окно предупреждения, которое появляется при преждевременном закрытии стимулированной рекламы пользователем.
continueText Надпись на кнопке, закрывающей окно предупреждения, которое появляется при преждевременном закрытии стимулированной рекламы пользователем.
immersive

Режим комфортного просмотра

key1..8 Здесь собраны 8 ключей

Функции OnPause и OnResume

Добавив код к функциям onPause и onResume, можно возобновлять показ рекламы, приостановленной при переходе приложения в фоновый режим.

void OnApplicationPause(bool pauseStatus) {
	if (pauseStatus) {
		Vungle.onPause();
	}
	else {
		Vungle.onResume();
	}
}

Обработка событий

Подключаемый модуль Unity для Vungle позволяет создать для приложения подписку на 4 события, связанные с показом рекламы.

// Срабатывает, когда реклама Vungle готово к показу
public static event Action<bool> adPlayableEvent;
// Срабатывает при начале показа рекламы Vungle
public static event Action onAdStartedEvent;
//Срабатывает, когда показ рекламы Vungle прекращается, и предоставляет все сведения об этом событии
public static event Action<AdFinishedEventArgs> onAdFinishedEvent;

Класс AdFinishedEventArgs состоит из следующих параметров.

public class AdFinishedEventArgs : EventArgs
{
	// true, если пользователь нажал кнопку «Загрузить» для перехода в магазин
	public bool WasCallToActionClicked;

	// true, если было просмотрено не менее 80% видеоролика
	public bool IsCompletedView;

	// Продолжительность просмотра рекламы Vungle
	public double TimeWatched;

	// Общая продолжительность рекламы Vungle
	public double TotalDuration;
}
// Срабатывает, когда пакет SDK отправляет событие журнала
public static event Action<string> onLogEvent;

Примечание. Следующие три события устарели.

// УСТАРЕЛО. Используйте вместо этого события adPlayableEvent.
public static event Action onCachedAdAvailableEvent;

// УСТАРЕЛО. Используйте вместо этого события onAdFinishedEvent
public static event Action onAdEndedEvent;
	
// УСТАРЕЛО. Используйте вместо этого события onAdFinishedEvent
public static event Action<double,double> onAdViewedEvent;

Создать подписку на эти события легко, это делается через объект VungleManager. В C# добавление прослушивателя событий выглядит следующим образом.

// Инкапсулированная функция, которая вызывается асинхронно при каждом возникновении события
Vungle.adPlayableEvent += (isAdAvailable) => {
	if (isAdAvailable) {
DebugLog ("An ad is ready to show!");
} else {
DebugLog ("No ad is available at this moment.");
} };

Вот и все! Дополнительные сведения о подключаемых модулях Unity для Vungle см. в других наших статьях о подключаемых модулях и в исходном коде примера приложения для Unity.

Примечание о тестировании приложения в режиме тестирования. В режиме тестирования скачивать рекламируемые приложения нельзя. Кроме того, на панели управления невозможно будет просмотреть количество показов. Это связано с тем, что тестовая реклама предназначена только для проверки правильности интеграции SDK. Эти функциональные возможности станут доступны после запуска приложения в активном режиме.

Запускаем пример приложения Vungle

Чтобы запустить пример приложения, откройте папку Assets -->Plugins --> Vungle --> demo и дважды щелкните VungleCombo.unity. Убедитесь, что в окне Hierarchy («Иерархия») отображается VungleCombo, а затем нажмите Build and Run («Собрать и запустить»).

Как экспортировать проект Xcode в Windows

Для экспорта проекта Xcode из Unity на компьютер с Windows на компьютере должен быть установлен язык программирования Python. Вне зависимости от того, устанавливаете ли вы Python для этой цели или по причине возникновения ошибки при экспорте, найти последнюю версию Python можно на этой странице: https://www.python.org/.

 

Была ли эта статья полезной?
Пользователи, считающие этот материал полезным: 2 из 7
Еще есть вопросы? Отправить запрос

Комментарии