Métrica de desinstalações

Visão Geral

Conclua as seções a seguir para configurar, integrar e testar a métrica de desinstalação do iOS:

  1. Creating a .p12 certificate and sending it to the marketer.
  2. Configurando o SDK para métrica de desinstalação.
  3. Testando a métrica de desinstalação

Creating a .p12 certificate

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

📘

Observação

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.Preencha o formulário. Selecione Salvos em disco e clique em Continuar.

Etapa 2: selecione o ID do aplicativo
2.1. If your Apple App ID is already registered, locate it in Apple Developer Members Center and skip to step 2.8.

If you need to create a new Apple App ID, in the Apple Developer Members Center, Go to Identifiers and click +.

878

2.2. Choose App IDs and click continue

2.3. Choose App and click continue

2.4. Under Register an App ID, in the Description field, provide the description for your app.

2.5. In the Bundle ID field, enter the app Bundle ID.

2.6. Click Continue.

2.7. Under Edit your App ID Configuration, select Push Notifications and click Configure to continue with the setting. Once your done skip to Step 3: Upload CSR below.

2.8. In the Register an App ID view, under Capabilities, check Push Notifications and click Configure (Edit if it was previously configured). If the Configure/Edit button is not available, you might not have the required permissions.

Etapa 3: Fazer upload do CSR
3.1. Escolha se deseja criar um Certificado SSL de Produção ou Desenvolvimento (consulte a observação) e clique em Criar certificado.

📘

Observação

Use um certificado SSL de produção para aplicativos publicados. Se seu aplicativo não está publicado e está em desenvolvimento ativo, pode querer trabalhar com um Certificado SSL de Desenvolvimento. Por exemplo, se seu aplicativo ainda não estiver pronto para ser publicado, um Certificado SSL de Desenvolvimento permitiria testar funcionalidades relacionadas ao Push no TestFlight.

3.2. Faça upload do CSR que você criou na etapa 1 e clique em Continuar.

3.3. Quando o botão Download aparecer, você estará pronto para fazer o download. Talvez seja necessário recarregar a página para atualizá-la. Faça download do certificado recém-criado.

1006

Etapa 4: crie um arquivo .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. Clique em salvar. Certifique-se de usar o formato Intercâmbio de Informações Pessoais (.p12)

774

📘

Observação

Se você estiver renovando seu Certificado SSL Push de Desenvolvimento ou Produção, siga as etapas listadas anteriormente. Não há necessidade de revogar o certificado anterior para fazer essa alteração. Dois certificados de produção podem estar em uso ao mesmo tempo, permitindo que você continue usando o certificado antigo durante o upload do novo.

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

Configuração do SDK

Adicione o seguinte código ao seu 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];
      }
}

Ativando notificações push no modo de segundo plano

Se você estiver usando apenas notificações push silenciosas, certifique-se de habilitar Notificações remotas em Modos de plano de fundo nos Recursos do seu aplicativo:

  1. No XCode, selecione seu projeto.
  2. Selecione seu destino.
  3. Alterne para a aba Recursos.
  4. Ative Modos de plano de fundo.
  5. Marque Notificações remotas.

Testando a métrica de desinstalação

Para testar a métrica de desinstalação do iOS:

  1. Instale o aplicativo.
  2. Desinstale o aplicativo.  Atenção! Você pode desinstalar o aplicativo imediatamente após instalá-lo. 

Ao testar desinstalações do Xcode ou TestFlight, é importante informar ao SDK que o token é gerado em um ambiente de área restrita. Use as seguintes APIs:

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

📘

Observação

setUseUninstallSandbox must be called before calling registerUninstall.

considerações

As desinstalações não aparecem imediatamente no painel da AppsFlyer. Devido ao serviço de notificação push da Apple:

  • Demora 9 dias, em média, para que as desinstalações do iOS apareçam nos relatórios.
  • Pode levar mais de um mês para que as desinstalações vindas de ambientes de área restrita apareçam nos relatórios
  • A data da desinstalação é a data em que a desinstalação é reportada. Por exemplo:
    • Dia 1: um usuário instala seu aplicativo
    • Dia 4: um usuário desinstala seu aplicativo
    • Dia 12: o serviço de notificação push da Apple reporta a remoção do aplicativo 8 dias após a desinstalação
    • Dia 13: os dados de desinstalação aparecem no dashboard da AppsFlyer e nos dados brutos