Visão geral: Atribuir instalações de aplicativos aos fabricantes de dispositivos para aplicativos adicionados aos dispositivos antes de saírem da fábrica. Observação: Ver todos os outros métodos de atribuição de pré-carregamento.
Introdução
O que é uma campanha de pré-instalação?
As campanhas de pré-instalação permitem que os proprietários de aplicativos alcancem vastos públicos sem terem de efetuar campanhas online.
Nas campanhas de pré-instalação, os proprietários de aplicativos podem solicitar aos fabricantes de dispositivos que pré-instalem seus aplicativos nos dispositivos antes de saírem da fábrica.
As campanhas de pré-instalação também podem ser uma colaboração com fontes de media de terceiros, que trabalham com vários fabricantes em nome dos proprietários de aplicativos.
Importante!
A AppsFlyer conta uma instalação quando um aplicativo é iniciado pela primeira vez. Dessa forma, o número de pré-instalações apresentadas é o número de usuários que inicializam seu aplicativo e não o número de dispositivos que têm o aplicativo pré-instalado.
Vantagens de registar instalações de campanhas de pré-instalação
Ao atribuir campanhas de pré-instalação, você pode medir o:
- número de usuários que inicializam seu aplicativo pré-instalado
- número de usuários de aplicativos que cada fabricante traz
- LTV de cada usuário e determinar qual o fabricante que traz os usuários mais valiosos
Como posso medir as campanhas de pré-instalação?
Existem quatro formas de medir as campanhas de pré-instalação. Para mais informações, consulte a seção Configuração deste artigo.
Visualizar dados de pré-instalação
As pré-instalações aparecem no painel da AppsFlyer sob a fonte de mídia atribuída, assim como qualquer outro evento de instalação. No entanto, o nome da sua campanha é sempre Pré-instalação.
Observação
Pode especificar diferentes nomes de campanha para pré-instalações com o método da API do SDK.
Observação
A partir de 24 de maio de 2022:
- Match_type para campanhas de pré-instalação de fábrica é apresentado como
preload_conf
nos relatórios de dados brutos. - A AppsFlyer exibe em painéis de controle a ad network que impulsionou o pré-carregamento e as ad networks que contribuíram para o primeiro lançamento de aplicativos. Saiba mais sobre campanhas de pré-carregamento.
Configuração
Selecione um dos seguintes métodos para medir as campanhas de pré-instalação.
Nome do método | Requer vários APKs? | Garante a atribuição de pré-instalação? | Requer ação por parte da fonte de mídia ou do fabricante? |
---|---|---|---|
Propriedades do sistema | Não | Sim | Sim |
API do SDK | Sim | Não | Não |
Nome no arquivo do manifesto | Sim | Não | Não |
Trajetória | Não | Não | Sim |
Método das propriedades do sistema (recomendado)
Utilizar a versão do SDK V4.0+
.
Este método é recomendado porque é o mais robusto de todos; no entanto, considere que, para todas as instalações de aplicações subsequentes, a fonte de mídia de pré-instalação é sempre atribuída. Isto é independente do fato de a instalação ser nova ou ser uma reinstalação.
O método das propriedades do sistema requer ações tanto do lado do programador como do lado do fabricante.
Desenvolvedor
É necessário fornecer o APK ao fabricante ou à fonte do suporte. O APK predefinido é fornecido. Este método não requer um APK separado.
Criar um arquivo chamado pre_install.appsflyer
. No arquivo, adicione um par chave-valor:
com.appsflyer.sampleapp=huawei
Para especificar parâmetros de pré-instalação adicionais:
No arquivo pre_install.appsflyer, passe os parâmetros adicionais no formato JSON. Por exemplo:
com.appsflyer.sampleapp={"pid":"huawei", "c":"special_campaign","af_adset":"some_adset"}
Importante!
Observe o seguinte comportamento ao usar esta opção:
- Em dados brutos, defina Channel (Canal) como "Pre-install" (Pré-instalação)
- Se o parâmetro
pid
não estiver presente no JSON, a fonte de mídia aparece como "Nenhum" nos dados brutos - Na configuração JSON, se o parâmetro
c
não estiver presente, o nome da campanha é definido como "Pré-instalação" - Se o JSON estiver mal formado, a cadeia de caracteres passada é tratada como o nome da fonte de mídia
Quando tiver o arquivo pre_install.appsflyer, entregue-o à fonte de mídia ou ao fabricante junto com o APK.
Fabricante
O fabricante coloca o pre_install.appsflyer num caminho de arquivo à sua escolha. As permissões do arquivo pre_install.appsflyer devem ser definidas para 744.
O fabricante edita então o arquivo de propriedades do sistema para apontar para o arquivo pre_install.appsflyer . Para fazer isso, o fabricante precisa adicionar um par chave-valor às propriedades do sistema.
Observação
São necessárias permissões de raiz para esta etapa. As permissões de raiz também são necessárias para testar a configuração de pré-instalação. Consulte a seção Testes para obter mais informações.
Adicionar um par chave-valor às propriedades do sistema Android:
adb shell su
setprop ro.appsflyer.preinstall.path /data/pre_install.appsflyer
Um método alternativo é obter o arquivo system-properties do sistema de arquivos android, editá-lo e enviá-lo de volta:
adb root
adb remount
adb pull /system/build.prop
echo ro.appsflyer.preinstall.path=/data/pre_install.appsflyer >> build.prop
adb push build.prop /system/build.prop
adb shell chmod 644 /system/build.prop
adb reboot
Vantagens
Não é necessário manter APKs diferentes para cada fonte de mídia ou fabricante. Não é necessário efetuar alterações e adicionar caminhos ao aplicativo no Google Play. Os fabricantes podem usar caminhos personalizados e não existem dependências entre vários aplicativos pré-instalados executados em diferentes dispositivos.
Este método garante a atribuição a campanhas de pré-instalação e fontes de mídia. Mesmo que um usuário atualize o aplicativo antes de o iniciar ou instale o aplicativo depois de clicar num anúncio, a pré-instalação continua a ser atribuída à fonte ou ao fabricante do suporte de pré-instalação.
Desvantagens
Alguma responsabilidade é transferida para a fonte ou o fabricante do suporte. Os desenvolvedores devem se certificar de que o fabricante ou a fonte de mídia toma as medidas necessárias. Além disso, este método pode ser um pouco mais difícil de testar para o programador de aplicativos.
Método da API do SDK
O método da API do SDK fornece uma maneira nativa de especificar o nome do fabricante ou da fonte de mídia à qual a pré-instalação é atribuída.
Para usar este método, adicione a seguinte chamada de método na classe AFApplication antes de inicializar o SDK:
setPreinstallAttribution(String mediaSource, String campaign, String siteId)
Ao trabalhar com uma fonte de mídia
AppsFlyerLib.getInstance().setPreinstallAttribution("MEDIA_SOURCE_NAME", "CAMPAIGN_NAME", "123");
AppsFlyerLib.getInstance().init(AF_DEV_KEY , conversionListener , getApplicationContext());
Ao trabalhar com um fabricante
AppsFlyerLib.getInstance().setPreinstallAttribution(android.os.Build.MANUFACTURER, "CAMPAIGN_NAME", "123");
AppsFlyerLib.getInstance().init(AF_DEV_KEY , conversionListener , getApplicationContext());
Observação
- O parâmetro da fonte de mídia é obrigatório.
- A propriedade
android.os.Build.MANUFACTURER
contém o nome do fabricante, tal como configurado pelo sistema operacional. O uso desta propriedade não garante que você obterá o nome do fabricante no mesmo formato em todos os dispositivos desse fabricante. Certifique-se de que esta propriedade contém o nome do fabricante, como previsto. - Os parâmetros
campaign
esiteId
são facultativos, mas são exigidos pelo métodosetPreinstallAttribution
. Se não quiser especificarcampaign
esiteId
, passe null em ambos.
Vantagens
O método da API do SDK permite obter o nome do fabricante de forma programática. Independentemente do fabricante, o método SDK obtém o nome diretamente do dispositivo. Isto significa que pode manter um APK para todos os fabricantes com os quais colabora.
O método setPreinstallAttribution
permite especificar o nome da campanha. Você pode separar cada fabricante ou fonte de mídia em campanhas diferentes, em vez de ter todas elas definidas na campanha "Pré-instalação".
Desvantagens
Se você estiver trabalhando diretamente com os fabricantes, terá de manter duas versões do seu APK, uma para os fabricantes e outra para o Google Play. Em ambos os casos, é necessário mais do que um APK.
Se estiver trabalhando com várias fontes de mídia que comunicam com o fabricante em seu nome, é necessário manter um APK separado para cada fonte de mídia.
Em alguns casos, a instalação pode não ser atribuída à fonte de mídia de pré-instalação:
- Se um usuário com um novo dispositivo atualizar o aplicativo pré-instalado diretamente a partir do Google Play sem o inicializar primeiro, a instalação é considerada orgânica.
- Se um usuário com um novo dispositivo atualizar o aplicativo a partir do Google Play depois de clicar num anúncio, a instalação é atribuída à fonte de mídia que apresenta o anúncio.
Dica
Você pode implementar a lógica no aplicativo para garantir que a instalação é contada como pré-instalação, mesmo que os cenários acima ocorram. Tanto o APK da Play Store como o APK destinado à pré-instalação devem conter essa lógica.
Exemplo:
- Você sabe que os aplicativos são pré-instalados nos dispositivos de um determinado fabricante e modelo. Estes dispositivos também estão funcionando com um determinado operador.
- Quando o aplicativo é inicializado, é possível verificar estas condições. Se estas condições forem cumpridas, a instalação é registada como pré-instalação. Uma vez que a lógica também existe no APK da Play Store, a instalação é registrada como pré-instalação, mesmo que o usuário atualize o aplicativo antes de inicializá-lo.
Nome no método do arquivo de manifesto
O nome no método de manifesto requer que você adicione uma etiqueta de metadados ao arquivo de manifesto do aplicativo. É necessário repetir esta etapa para cada fonte de mídia ou fabricante com que você trabalha.
Adicione uma tag de metadados antes da tag de fechamento do aplicativo:
...
<meta-data android:name="AF_PRE_INSTALL_NAME" android:value="market_name"/>
</application>
</manifest>
Quando o aplicativo é inicializado pela primeira vez, o SDK da AppsFlyer detecta esta tag de metadados no arquivo de manifesto e atribui a instalação de forma correspondente.
Vantagens
O nome no método de manifesto é considerado um método fácil para atribuir campanhas de pré-instalação. Só há uma tag a adicionar ao manifesto. Além disso, a fonte de mídia ou o fabricante não tem de fazer nada para permitir a medição da campanha.
Desvantagens
Uma vez que a tag de metadados especifica a fonte de mídia ou o nome do fabricante, é necessário manter diferentes conjuntos de APKs, um para cada fonte de mídia ou fabricante.
Em alguns casos, a instalação pode não ser atribuída à fonte de mídia de pré-instalação:
- Se um usuário com um novo dispositivo atualizar o aplicativo pré-instalado diretamente a partir do Google Play sem o inicializar primeiro, a instalação é considerada orgânica.
- Um usuário com um novo dispositivo instala o aplicativo a partir do Google Play depois de clicar num anúncio, a instalação é atribuída à fonte de mídia que apresenta o anúncio.
Método de caminho
Observação
Compatível com a versão 4.5.0 ou posterior do SDK.
Este método requer que tanto o programador como o fabricante executem algumas ações no seu lado.
Desenvolvedor
O método de caminho possibilita especificar um caminho para um arquivo que contém o nome da fonte de mídia ou do fabricante. Há três etapas que devem ser concluídas:
- Criar um arquivo que contenha um par chave-valor. O arquivo deve se chamar pre_install.appsflyer. No arquivo, especifique o par chave-valor no formato <PACKAGE_NAME>=<MEDIA_SOURCE> Por exemplo,
com.appsflyer.sampleapp=my_media_source
.
Passagem de parâmetros adicionais de pré-instalação
É possível especificar parâmetros adicionais de pré-instalação no arquivo usando JSON. Por exemplo, você pode adicionar o seguinte par chave-valor no arquivo pre_install.appsflyer:
com.appsflyer.sampleapp={"pid":"huawei", "c":"special_campaign","af_adset":"some_adset"}
Importante!
É importante levar em consideração os seguintes comportamentos ao usar esta opção:
- Define "Pre-install" como af_channel
- Se o pid não estiver presente no JSON, a Fonte de Mídia aparece como "Nenhum".
- Na configuração JSON, se c não estiver presente, o nome da campanha é definido como "Pré-instalação"
- Se o JSON estiver mal formado, a cadeia de caracteres passada é tratada como o nome da fonte de mídia
Quando tiver o arquivo pre_install.appsflyer, entregue-o à fonte de mídia ou ao fabricante junto com o APK.
- Fale com a fonte ou o fabricante do suporte de dados e chegue em um acordo com eles sobre o caminho para colocar o arquivo. O caminho recomendado é "/data/local/tmp/pre_install.appsflyer".
- Uma vez acordado um caminho, especifique-o no arquivo do manifesto. Coloque o seguinte trecho antes da tag de fechamento do aplicativo:
<meta-data android:name="AF_PRE_INSTALL_PATH" android:value="/data/local/temp/pre_install.appsflyer" />
Fabricante
O fabricante deve colocar o arquivo no caminho acordado. As permissões do arquivo pre_install.appsflyer devem ser definidas para 744.
Quando o aplicativo é inicializado, o SDK procura no arquivo de manifesto, vê o caminho especificado e procura o arquivo nesse local. Quando o encontra, atribui a instalação de acordo com a fonte de mídia especificada na mesma.
Vantagens
A AppsFlyer busca o arquivo pre_install.appsflyer em dois caminhos predefinidos:
/data/local/tmp/pre_install.appsflyer
OR
/etc/pre_install.appsflyer
Alguns fabricantes preferem colocar o arquivo num caminho não predefinido. Nesse caso, pode especificar este caminho não predefinido no arquivo de manifesto.
Importante!
O caminho não predefinido requer o SDK versão 4.8 ou posterior
Embora sejam permitidos caminhos não predefinidos, recomendamos a implementação do método Propriedades do sistema.
Desvantagens
É necessário atualizar arquivos pre_install.appsflyer separadamente para diferentes fontes de mídia ou fabricantes.
O fabricante poderá querer colocar o arquivo pre_install.appsflyer num caminho não predefinido. Neste caso, é necessário manter APKS separados para cada caminho não predefinido.
Se for usado um caminho não predefinido, a instalação poderá não ser atribuída à origem da mídia de pré-instalação:
- Se um usuário com um novo dispositivo atualizar o aplicativo pré-instalado diretamente a partir do Google Play sem o inicializar primeiro, a instalação é considerada orgânica.
- Se um usuário com um novo dispositivo instala o aplicativo a partir do Google Play depois de clicar num anúncio, a instalação é atribuída à fonte de mídia que apresenta o anúncio.
Testar a configuração de pré-instalação
Esta seção demonstra como testar e verificar a configuração de pré-instalação.
Importante!
Antes de iniciar os testes, certifique-se de que os dispositivos que vai usar para os testes estão na lista de permissões.
Além disso, certifique-se de que o registo de depuração está definido como verdadeiro na classe AFApplication.
AppsFlyerLib.getInstance().setDebugLog(true);
Verificar a configuração no aplicativo
Dica
Para evitar problemas de armazenamento em cache e para obter melhores resultados, recomenda-se que limpe o projeto antes de o construir. No Android Studio, clique em Criar no menu de contexto e selecioneLimpar projeto.
Crie seu aplicativo no Android Studio e instale-o no dispositivo de teste. Quando o aplicativo for inicializado, abra o Logcat no Android Studio e filtre por "AppsFlyer". Você deverá ver a instalação atribuída com todos os detalhes. Veja as capturas de tela abaixo como exemplo:
Verificando a configuração no painel da AppsFlyer
Se a configuração for bem sucedida, é apresentada no painel uma instalação não orgânica atribuída a um fabricante ou fonte de mídia. O evento de instalação também está listado na campanha "Pré-instalação".
Acesse sua conta da AppsFlyer e abra o painel do aplicativo que você está testando. Siga as etapas abaixo:
- Na página de visão geral, filtre por fontes de mídia e selecione a fonte de mídia:
- Em Distribuição por campanha é possível ver que a instalação atribuída à "minha fonte de mídia" vem de uma campanha de Pré-instalação:
Também é possível verificar se a instalação foi atribuída corretamente, visualizando o Relatório de desempenho agregado. Nela, você pode ver a fonte de mídia e a campanha. Veja a captura de tela abaixo, em que "My Media Source" é a fonte de mídia e a campanha é pré-instalação:
- Repita o processo para todos os fabricantes ou fontes de mídia com os quais colabora para campanhas de pré-instalação.
Casos especiais
Vários aplicativos pré-instalados no mesmo dispositivo
Se tiver campanhas para vários aplicativos que estão instalados no mesmo dispositivo, você pode medir a atribuição usando cada um dos quatro métodos:
- Nome no método de manifesto - para cada aplicativo, especifique a fonte de mídia ou o fabricante no Manifest.xml de cada aplicativo.
- Método da API do SDK - para cada aplicativo, especificar a fonte de mídia ou o fabricante no método da API do SDK para pré-instalação.
- Para propriedades do sistema ou métodos de caminho, você pode especificar os aplicativos e a fonte de mídia correspondente no arquivo arquivo pre_install.appsflyer. Cada informação do aplicativo deve ser adicionada numa nova linha do arquivo. Por exemplo:
com.appsflyer.tester=market_name com.newapp.newapp=market_name com.game.king=market_name
Envio de postbacks de instalação
Se a fonte de mídia ou o fabricante com o qual você trabalha for um parceiro da AppsFlyer, você pode ativar postbacks para instalações.
Para isso, certifique-se de que o nome da fonte de mídia é equivalente ao pid da fonte de mídia conforme configurado pela AppsFlyer.
Por exemplo, se estiver trabalhando com market_name, o seu pid é market_name_int. É possível ver o pid no link de atribuição de um parceiro integrado.
Agências
Atualmente, as agências não podem ser atribuídas com pré-instalações.
Se o af_prt (parâmetro para o nome da agência) fizer parte dos dados de pré-instalação e o usuário inicializar o aplicativo pré-instalado:
- O usuário é atribuído à fonte de mídia usada pela agência (pid=).
- O cliente pode acessar todos os dados no nível do usuário.
- O usuário NÃO é atribuído à agência.
- A agência não pode acessar aos dados no nível do usuário.