Измерение удалений

Обзор

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

  1. Creating a .p12 certificate and sending it to the marketer.
  2. Настройка SDK для измерения удалений.
  3. Тестирование измерения удалений.

Creating a .p12 certificate

To enable uninstall measurement, a .p12 certificate is required.

📘

Примечание

Currently, .p8 certificates are not supported.

To create a .p12 certificate:
Step 1: Create a Certificate Signing Request (CSR)
1.1. On your Mac, open Keychain Access. Go to Keychain Access > Certificate Assistant > Request a Certificate From a Certificate Authority.

1.2. Заполните форму. Выберите Saved to disk (Сохранено на диске) и нажмите Continue (Продолжить).

Шаг 2. Выберите идентификатор приложения
2.1. Найдите свой идентификатор приложения Apple на портале Apple Developer Members Center или создайте его.

Чтобы создать идентификатор приложения, в Apple Developer Members Center перейдите в раздел Identifiers (Идентификаторы) и нажмите +.

878

2.2 Выберите идентификаторы приложений и нажмите продолжить

2.3 Выберите приложение и нажмите продолжить

2.4. В представлении регистрации идентификатора приложения в разделе Возможности проверьте Push-уведомления и нажмите Настроить (или Изменить, если настройки уже заданы). Если вы не видите кнопку Настроить/Изменить, у вас может не хватать прав доступа.

Шаг 3: Загрузите CSR
3.1.Выберите, нужно ли создать рабочий сертификат SSL (Production) или для разработки (Development) (см. примечание) и нажмите Create Certificate (Создать сертификат).

📘

Примечание

Используйте Production SSL Certificate (рабочий сертификат SSL) для опубликованных приложений. Если ваше приложение не опубликовано и находится в активной разработке, вы можете использовать Development SSL Certificate (Сертификат SSL для разработки). Например, если ваше приложение еще не готово к публикации, сертификат SSL для разработки позволит протестировать функции, связанные с push-уведомлениями, в TestFlight.

3.2. Загрузите CSR, созданный на шаге 1, и нажмите Continue (Продолжить).

3.3. Когда в окне появится кнопка Download (Скачать), сертификат можно загружать. Возможно, для ее отображения придется перезагрузить страницу. Загрузите созданный сертификат.

1006

Шаг 4: Создайте файл .p12 .
4.1. Open the .cer certificate. Opening the certificate will open Keychain Access.
4.2. In the Keychain Access, your certificate is shown under My Certificates. Select the certificate that was just added to Keychain Access.
4.3. Right-click on your certificate and select Export.

670

4.4. Нажмите сохранить. Для сохранения файла используйте формат Personal Information Exchange (.p12) .

774

📘

Примечание

Если вы продлеваете срок действия SSL-сертификата службы push-уведомлений (для разработки или рабочем), следуйте шагам, описанным ранее. При этом отзывать предыдущий сертификат не нужно. Можно одновременно иметь два рабочих сертификата, что позволяет использовать старый сертификат, пока загружается новый.

Step 5: Upload .p12 to AppsFlyer
Send the .p12 certificate to the marketer to upload to AppsFlyer.

Настройка SDK

Добавьте в файл AppDelegate такой код:

    	//add UserNotifications.framework
import UserNotifications
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
        // ...
        application.registerForRemoteNotifications()        
        return true
      }
    
     // Called when the application sucessfuly registers for push notifications
      func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) {
        AppsFlyerLib.shared().registerUninstall(deviceToken)
      }
// AppDelegate.h
#import <AppsFlyerLib/AppsFlyerLib.h>
@interface AppDelegate : UIResponder <UIApplicationDelegate, AppsFlyerLibDelegate>

// AppDelegate.m
- #import <UserNotifications/UserNotifications.h>
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
        // The userNotificationTypes below is just an example and may be changed depending on the app
     UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter];
              center.delegate = self;
              [center requestAuthorizationWithOptions:(UNAuthorizationOptionSound | UNAuthorizationOptionAlert | UNAuthorizationOptionBadge) completionHandler:^(BOOL granted, NSError * _Nullable error) {
              }];
       [[UIApplication sharedApplication] registerForRemoteNotifications];
        // if you do not use push notificaiton in your app, uncomment the following line
        //application.applicationIconBadgeNumber = 0;
      }
      - (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
        [[AppsFlyerLib shared] registerUninstall:deviceToken];
      }
}

Включение Push-уведомлений в фоновом режиме

Если вы используете только бесшумные Push-уведомления, включите функцию Remote Notifications ("Удаленные уведомления") в разделе Background Modes ("Фоновые режимы") на вкладке Capabilities ("Возможности"):

  1. Выберите свой проект в XCode.
  2. Выберите цель.
  3. Перейдите на вкладку Capabilities (Возможности).
  4. Включите Background Modes (Фоновые режимы).
  5. Установите флажок Remote notifications (Удаленные уведомления).

Тестирование измерения удалений

Чтобы протестировать измерение количества удалений для устройств на iOS:

  1. Установите приложение.
  2. Удалите приложение. Внимание! Приложение можно удалить сразу после установки. 

При тестировании удаления  из Xcode или TestFlight важно, чтобы наш SDK знал, что токен сгенерирован в «песочнице». Используйте следующие API:

AppsFlyerLib.shared().useUninstallSandbox = true
[AppsFlyerLib shared].setUseUninstallSandbox = true;

📘

Примечание

setUseUninstallSandbox must be called before calling registerUninstall.

Факторы, которые необходимо учитывать

Удаления не отображаются на дэшборде AppsFlyer сразу же. Из-за службы Apple Push Notification:

  • В среднем данные об удалениях на iOS появляются в отчетах через 9 дней.
  • Чтобы в отчетах отразились удаления приложения на iOS, выполненные в безопасной среде («Песочнице»), может потребоваться более месяца.
  • Датой удаления считается дата, когда удаление зафиксировано в отчете. Например:
    • День 1. Пользователь устанавливает ваше приложение.
    • День 4. Пользователь удаляет ваше приложение.
    • День 12. Служба push-уведомлений Apple сообщает об удалении приложения через 8 дней с момента удаления.
    • День 13. Данные об удалении появляются на дэшборде AppsFlyer и в сырых данных.