Шаг 1. Импорт SDK
- Конфигурация Podfile
Показать Podfile
- Вызов pod install
Вызовите $ pod install для установки зависимостей CocoaPods или $ pod update для обновления.
Если у вас не установлен pod, установите CocoaPods,
чтобы упростить управление зависимостями.
sudo gem install cocoapods
- Теперь открывайте свой проект с помощью файла .xcworkspace.
Шаг 2. Подготовьте ваше приложение
Добавьте SKAdNetworkIds
Для обеспечения корректного сканирования пакетов SKAdNetwork используйте семантическое версионирование (SemVer) для версии вашего приложения.
Рекламные сети, используемые в медиации Appodeal, поддерживают отслеживание конверсий с помощью SKAdNetwork от Apple,
что означает, что рекламные сети могут атрибутировать установку прил ожения, даже если IDFA недоступен.
Чтобы включить эту функциональность, вам необходимо обновить ключ SKAdNetworkItems с дополнительным
словарем в вашем Info.plist.
Если вы используете Xcode 14+ и SwiftUI в своем приложении, то вы можете заметить, что по умолчанию нет Info.plist в навигаторе проекта.
Вам нужно перейти в Target → вкладка Info → Custom iOS Target Properties и внести любые изменения, просто добавив пустую строку, чтобы файл Info.plist появился в навигаторе вашего проекта.
- Выберите Info.plist в навигаторе проекта в Xcode.
- Нажмите правой кнопкой мыши на файл Info.plist → Open as → Source Code
- Скопируйте SKAdNetworkItems из приведенного ниже примера и вставьте его в ваш файл Info.plist
Есть SKAdNetworks ID в формате Info.plist
<key>SKAdNetworkItems</key>
<array>
</array>
Настройка параметров безопасности транспорта приложения
Для показа рекламы SDK требует, чтобы вы разрешили произвольные загрузки. Установите следующие ключи в Info.plist вашего приложения:
- Перейдите к файлу Info.plist, затем нажмите Add+ в любом месте первого столбца списка ключей.
- Добавьте ключ App Transport Security Settings и установите его тип на Dictionary во втором столбце.
- Нажмите Add+ в конце имени ключа App Transport Security Settings key и выберите Allow Arbitrary loads. Установите его тип на Boolean, а значение на Yes.
Вы также можете добавить ключ в ваш Info.plist напрямую, используя этот код:
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
Настройка AdMob
Для повышения эффективности рекламы следует добавить следующие записи (если вы используете AdMob):
- GADApplicationIdentifier - При включении AdMob в ваш проект,
вы также должны добавить свой AdMob app ID в ваш info.plist.
Используйте ключ
GADApplicationIdentifierсо значением вашего AdMob app ID. Для получения дополнительной информации о синхронизации AdMob ознакомьтесь с нашим руководством по AdMob. - NSUserTrackingUsageDescription - Начиная с iOS 14, использование IDFA требует разрешения от пользователя. Следующая запись должна быть добавлена для повышения эффективности рекламы.
- NSCalendarsUsageDescription - Рекомендуется некоторыми рекламными сетями.
<key>GADApplicationIdentifier</key>
<string>YOUR_ADMOB_APP_ID</string>
<key>NSUserTrackingUsageDescription</key>
<string><App Name> needs your advertising identifier to provide personalised advertising experience tailored to you</string>
<key>NSCalendarsUsageDescription</key>
<string><App Name> needs your calendar to provide personalised advertising experience tailored to you</string>
Обратите внимание, если вы удалили адаптер Admob, не забудьте также удалить BDMNotsyAdapter с помощью этого руководства.
Шаг 3.Инициализация SDK
Мы рекомендуем вызывать метод инициализации
в функции AppDelegate -didFinishLaunchingWithOptions:
- Swift
- Objective-C
@UIApplicationMain
final class MyAppDelegate: UIResponder, UIApplicationDelegate, AppodealInitializationDelegate {
func application(
_ application: UIApplication, didFinishLaunchingWithOptions
launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil
) -> Bool {
Appodeal.setAutocache(false, types: .interstitial)
Appodeal.setLogLevel(.verbose)
// Новый необязательный делегат для завершения инициализации
Appodeal.setInitializationDelegate(self)
/// Любая другая предварительная инициализация
/// логика, специфичная для приложения
Appodeal.initialize(
withApiKey: "APP_KEY",
types: .interstitial
)
return true
}
func appodealSDKDidInitialize() {
// Инициализация Appodeal SDK завершена
}
}
@interface MyAppDelegate () <AppodealInitializationDelegate>
@end
@implementation MyAppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[Appodeal setAutocache:NO types:AppodealAdTypeInterstitial]; [Appodeal setLogLevel:APDLogLevelVerbose];
// Новый необязательный делегат для завершения инициализации
[Appodeal setInitializationDelegate:self];
/// Любая другая предварительная инициализация
/// логика, специфичная для приложения
[Appodeal initializeWithApiKey:@"APP KEY" types:AppodealAdTypeInterstitial];
return YES;
}
- (void)appodealSDKDidInitialize {
// Инициализация Appodeal SDK завершена
}
@end
adTypes — это параметр, отвечающий за форматы объявлений (например, AppodealAdTypeRewardedVideo, AppodealAdTypeInterstitial).
нициализируйте только те типы объявлений, которы е вы хотите использовать в своем приложении, чтобы избежать получения запросов объявлений для неиспользуемых.
consent — это объект, отвечающий за согласие на сбор персональных данных пользователя в соответствии с законами GDPR и CCPA.
Более подробную информацию вы можете найти здесь.
Убедитесь, что вы заменили APP_KEY на фактический ключ приложения.
Вы можете найти его в списке приложений в вашем личном кабинете.
Вы можете использовать наше демо-приложение в качестве примера проекта.
Демо-приложение
Подробную документацию вы можете найти здесь