O que você pode fazer com a Configuração remota?

Os desenvolvedores de aplicativos usam a Configuração remota de muitas maneiras diferentes para atender às suas necessidades específicas, e nós incentivamos isso. Para ter uma ideia do que você pode fazer com a Configuração remota, esta página descreve alguns casos de uso com ampla aplicabilidade para desenvolvedores de dispositivos móveis.

Lance novos recursos com o mecanismo de distribuição de porcentagem

Você pode usar a Configuração remota para realizar uma implementação percentual e expor lentamente os usuários a novas funcionalidades. Para este caso de uso, digamos que você tenha uma nova função de pesquisa ativada e desativada usando um parâmetro do Configuração remota chamado new_search_feature_flag e queira começar implementando-a para 10% da sua base de usuários instalada.

Para conseguir isso, edite seu parâmetro new_search_feature_flag , adicione uma nova condição e selecione Usuário em porcentagem aleatória . Use o controle deslizante para definir a porcentagem aleatória entre 0 e 10.

Imagem movendo-se pelas etapas da GUI do Console do Firebase para executar uma implementação percentual em um parâmetro existente
Adicionando parâmetro para implementação de recurso percentual

Agora, quando o valor new_search_feature_flag é obtido no Configuração remota, 10% dos usuários selecionados aleatoriamente recebem o valor true , enquanto os outros 90% recebem o valor false .

Quando estiver satisfeito com a estabilidade do recurso em 10% da população de usuários, você poderá aumentá-la para 30%, para 50% e, eventualmente, para 100%, quando tiver total confiança no recurso.

Defina banners promocionais específicos da plataforma e do local para seu aplicativo

Imagine que você tem uma venda de comércio eletrônico chegando e deseja ativar uma página promocional em seu aplicativo. Além disso, imagine que você deseja personalizar esta página inicial para a mesma localidade que seu usuário definiu em seu dispositivo. Você pode definir um parâmetro promo_splash_graphic e definir seu valor para URLs estáticos (hospedados no Firebase Storage ou em outro lugar) e depois referenciá-los dinamicamente em seu aplicativo.

Você poderia então atribuir valores diferentes ao Android e à Apple para localidades que são mais importantes para sua campanha de marketing promocional. Se precisar acionar promoções em um horário específico, você poderá usar as condições de tempo da Configuração remota e também usar a Configuração remota em tempo real para garantir que as alterações sejam extraídas logo após a publicação do modelo e, em seguida, ativá-las como -necessário em seu aplicativo.

Imagem animada passando pelas etapas da GUI do console do Firebase para definir banners promocionais específicos da plataforma e do local
Adicionando parâmetro para banners promocionais localizados

Você também pode usar as APIs de back-end do Configuração remota para atualizar os valores dos parâmetros de forma programática e, em seguida, acionar a funcionalidade de um cron job.

Forneça experiências personalizadas para seus usuários com base no primeiro uso do aplicativo

Você pode usar a Configuração remota para fornecer experiências personalizadas aos usuários com base na data e hora em que abriram seu aplicativo pela primeira vez, incluindo os seguintes casos de uso:

  • Forneça diferentes fluxos de integração conforme os usuários ingressam no seu aplicativo.
  • Exponha incentivos ou recursos ocultos atrás de sinalizadores de recursos ou alternâncias para novos usuários após uma determinada data.
  • Forneça experiências personalizadas aos usuários que ingressaram durante um período específico.

Digamos que você queira oferecer um presente no jogo a novos usuários para incentivar o envolvimento e a retenção iniciais e queira oferecer uma recompensa diferente a um grupo de usuários antigos. Você pode criar um parâmetro chamado extra_coin_splash que controla um pop-up que oferece moeda grátis no jogo com uma mensagem personalizável, número de moedas de bônus e número máximo de vezes para exibir novamente a oferta caso o usuário não tenha aceitado a oferta . Você pode usar o valor padrão no aplicativo como parâmetro padrão e, em seguida, criar duas condições.

Primeiro, adicione um valor condicional ao parâmetro de configuração remota extra_coins_splash direcionado a um aplicativo Android ou iOS específico, defina First open como uma data e hora no futuro e, em seguida, defina o valor do parâmetro como:

{"banner_text": "Welcome! Enjoy some extra coins!", "bonus_coins": 15, "max_display_retries": 2}

Em seguida, adicione uma condição para um grupo de usuários existente que você deseja recompensar, por exemplo, todos os usuários que ingressaram em julho e ainda usam seu jogo em outubro. Para fazer isso, adicione outro valor condicional ao parâmetro extra_coins_splash com Primeira abertura definida entre 1º de julho e 1º de agosto e defina o valor do parâmetro como:

{"banner_text": "Thanks for being a loyal user!", "bonus_coins": 30, "max_display_retries": 2}:

Seu parâmetro extra_coins_splash final será parecido com o seguinte:

Remote Config parameter with conditional values

Depois de publicar sua configuração com esse parâmetro, ambos os grupos de usuários receberão os valores extras dos parâmetros de moeda que você configurou após a próxima busca.

Como próxima etapa, experimente um experimento de teste A/B ou personalização com seus parâmetros e condições de segmentação, usando diferentes mensagens de banner e valores de moedas de bônus.

Teste novas funcionalidades em um grupo de testes limitado

Normalmente, para testar novas funcionalidades dentro de um grupo de testes limitado, você usaria um canal Alpha no Google Play ou Test Flight para um aplicativo da Apple. Essas ferramentas são perfeitas quando você deseja testar novas funcionalidades na mesma cadência do seu ciclo normal de desenvolvimento.

No entanto, às vezes você pode ter um recurso que gostaria de testar mais rapidamente e ativar ou desativar facilmente, independentemente do momento do próximo lançamento em seu ciclo regular de desenvolvimento. Nesses casos, a Configuração remota pode ser uma ferramenta muito útil.

Digamos que você queira testar novos gráficos entre os funcionários da sua empresa. Como isso poderia ser ativado com a Configuração remota?

Quando os usuários fizerem login no seu aplicativo, verifique seu ID de e-mail e configure a propriedade do usuário is_mydomain_employee=true que se aplica somente quando o e-mail pertence ao seu domínio. Em seguida, crie uma condição que rastreie essa propriedade do usuário. Você pode direcionar essa propriedade de usuário no Configuração remota e ativar a nova funcionalidade somente para esses usuários.

Imagem animada passando pelas etapas da GUI do console do Firebase para testar novas funcionalidades em um grupo de testes limitado
Direcionando grupos de teste com uma condição

Use JSON para configurar entidades complexas em seu aplicativo ou jogo

À medida que seu aplicativo cresce em complexidade, você precisa de melhores maneiras de fornecer configuração ao seu aplicativo. Por exemplo, se quiser configurar um novo sistema de login, você poderá criar um parâmetro do Configuração remota para cada valor dinâmico que deseja controlar. No entanto, configurar seu sistema de login dessa forma é tedioso e muito difícil de entender e manter.

A melhor maneira de fornecer configuração para esse sistema de login seria usar JSON e agrupar todos esses parâmetros em um único parâmetro. Isso ajuda na edição e manutenção do parâmetro login com muito mais facilidade ao longo do tempo.

O console do Firebase fornece um validador JSON e uma impressora bonita que você pode usar ao editar os parâmetros do Configuração remota. Ao trabalhar no console, clique no ícone {} para abrir o editor.

Imagem animada passando pelas etapas da GUI do console do Firebase para configurar entidades complexas com JSON
Usando o editor JSON para agrupar parâmetros

Enviar mensagem do Slack/e-mail quando uma atualização do Configuração remota for publicada

Se você faz parte de uma equipe grande que usa a Configuração remota, muitas vezes é difícil acompanhar quem está publicando a Configuração remota na sua equipe e quando.

Para simplificar os fluxos de trabalho colaborativos, você pode ser alertado por meio do seu mecanismo favorito (Slack ou Email) quase em tempo real. A API REST da Configuração remota, juntamente com um gatilho em segundo plano da Configuração remota no Cloud Functions para Firebase, permite que você envie uma notificação sempre que o modelo da Configuração remota for alterado.

O eBay recentemente abriu o código-fonte de sua implementação para saber como eles usam Cloud Functions com Configuração Remota para publicar uma comparação entre modelos de Configuração Remota anteriores e novos em um canal do Slack.