Personalização das notificações por push
Saiba como personalizar as notificações por push para o SDK do Braze.
Pré-requisitos
Antes de poder usar esse recurso, você precisará integrar o Android Braze SDK. Você também precisará configurar notificações por push.
Uso de um retorno de chamada para eventos push
A Braze fornece um retorno de chamada subscribeToPushNotificationEvents()
para quando notificações por push são recebidas, abertas ou descartadas. Recomenda-se colocar este retorno de chamada no seu Application.onCreate()
para não perder nenhum evento que ocorra enquanto seu aplicativo não estiver em execução.
Se anteriormente usava um Receptor de Transmissão Personalizado para essa funcionalidade em seu aplicativo, você pode removê-lo com segurança em favor desta opção de integração.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Braze.getInstance(context).subscribeToPushNotificationEvents(event -> {
final BrazeNotificationPayload parsedData = event.getNotificationPayload();
//
// The type of notification itself
//
final boolean isPushOpenEvent = event.getEventType() == BrazePushEventType.NOTIFICATION_OPENED;
final boolean isPushReceivedEvent = event.getEventType() == BrazePushEventType.NOTIFICATION_RECEIVED;
// Sent when a user has dismissed a notification
final boolean isPushDeletedEvent = event.getEventType() == BrazePushEventType.NOTIFICATION_DELETED;
//
// Notification data
//
final String pushTitle = parsedData.getTitleText();
final Long pushArrivalTimeMs = parsedData.getNotificationReceivedTimestampMillis();
final String deeplink = parsedData.getDeeplink();
//
// Custom KVP data
//
final String myCustomKvp1 = parsedData.getBrazeExtras().getString("my first kvp");
final String myCustomKvp2 = parsedData.getBrazeExtras().getString("my second kvp");
});
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Braze.getInstance(context).subscribeToPushNotificationEvents { event ->
val parsedData = event.notificationPayload
//
// The type of notification itself
//
val isPushOpenEvent = event.eventType == BrazePushEventType.NOTIFICATION_OPENED
val isPushReceivedEvent = event.eventType == BrazePushEventType.NOTIFICATION_RECEIVED
// Sent when a user has dismissed a notification
val isPushDeletedEvent = event.eventType == BrazePushEventType.NOTIFICATION_DELETED
//
// Notification data
//
val pushTitle = parsedData.titleText
val pushArrivalTimeMs = parsedData.notificationReceivedTimestampMillis
val deeplink = parsedData.deeplink
//
// Custom KVP data
//
val myCustomKvp1 = parsedData.brazeExtras.getString("my first kvp")
val myCustomKvp2 = parsedData.brazeExtras.getString("my second kvp")
}
Com os botões de ação de notificação, as intenções BRAZE_PUSH_INTENT_NOTIFICATION_OPENED
são acionadas quando os botões com ações opens app
ou deep link
são clicados. A administração de deep linking e extras permanece a mesma. Os botões com ações do close
não disparam as intenções do BRAZE_PUSH_INTENT_NOTIFICATION_OPENED
e dispensam a notificação automaticamente.
Crie seu ouvinte de notificação por push em Application.onCreate
para garantir que o ouvinte seja disparado depois que um usuário final tocar em uma notificação enquanto o app estiver em um estado finalizado.
Personalização de fontes
Etapa 1: Criar uma família de fontes
A seguir, um exemplo de definição de família de fontes personalizada usando o guia de família de fontes. Para este exemplo, usamos a fonte Bungee Shade.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?xml version="1.0" encoding="utf-8"?>
<font-family xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<!--Note: You must declare both sets of attributes
so that your fonts load on devices running Android 8.0 (API level 26) or lower.
See https://developer.android.com/guide/topics/ui/look-and-feel/fonts-in-xml.html -->
<font android:fontStyle="normal"
android:fontWeight="400"
android:font="@font/bungeeshade"
app:fontStyle="normal"
app:fontWeight="400"
app:font="@font/bungeeshade"/>
</font-family>
Depois de armazenar a definição da família de fontes em /res/font/bungee_font_family.xml
, podemos fazer referência a ela em XML como @font/bungee_font_family
.
Etapa 2: Faça referência à sua família de fontes
Agora que a família de fontes foi criada, você pode substituir os padrões de estilo do Braze em seu site styles.xml
para incluir referências à família de fontes.
Por exemplo, a seguinte substituição de estilos usaria a família de fontes bungee
para todas as mensagens no app do Braze.
1
2
3
4
5
6
7
8
9
<style name="Braze.InAppMessage">
<item name="android:fontFamily">@font/bungee_font_family</item>
<item name="fontFamily">@font/bungee_font_family</item>
</style>
<style name="Braze.Cards">
<item name="android:fontFamily">@font/another_custom_font_family</item>
<item name="fontFamily">@font/another_custom_font_family</item>
</style>
Os atributos de estilo android:fontFamily
e fontFamily
devem ser definidos para manter a compatibilidade em todas as versões do SDK.
Personalização da exibição de notificações
Etapa 1: Crie sua fábrica de notificações personalizada
Em alguns cenários, você pode querer personalizar as notificações por push de maneiras que seriam complicadas ou não estariam disponíveis no lado do servidor. Para que você tenha controle total sobre a exibição de notificações, adicionamos a capacidade de definir seus próprios IBrazeNotificationFactory
para criar objetos de notificação para serem exibidos pelo Braze.
Se um IBrazeNotificationFactory
personalizado for definido, o Braze chamará o método createNotification()
de sua fábrica no recebimento do push antes que a notificação seja exibida ao usuário. O Braze transmitirá um Bundle
contendo dados de envio do Braze e outro Bundle
contendo pares de chave-valor personalizados enviados por meio do dashboard ou das APIs de envio de mensagens:
O Braze passará um arquivo BrazeNotificationPayload
contendo dados da notificação por push da Braze.
1
2
3
4
5
6
7
8
9
// Factory method implemented in your custom IBrazeNotificationFactory
@Override
public Notification createNotification(BrazeNotificationPayload brazeNotificationPayload) {
// Example of getting notification title
String title = brazeNotificationPayload.getTitleText();
// Example of retrieving a custom KVP ("my_key" -> "my_value")
String customKvp = brazeNotificationPayload.getBrazeExtras().getString("my_key");
}
1
2
3
4
5
6
7
8
// Factory method implemented in your custom IBrazeNotificationFactory
override fun createNotification(brazeNotificationPayload: BrazeNotificationPayload): Notification {
// Example of getting notification title
val title = brazeNotificationPayload.getTitleText()
// Example of retrieving a custom KVP ("my_key" -> "my_value")
val customKvp = brazeNotificationPayload.getBrazeExtras().getString("my_key")
}
Você pode retornar null
de seu método personalizado createNotification()
para não mostrar a notificação, usar BrazeNotificationFactory.getInstance().createNotification()
para obter nosso objeto padrão notification
para esses dados e modificá-lo antes da exibição ou gerar um objeto notification
completamente separado para exibição.
Para obter a documentação sobre as chaves de dados push da Braze, consulte o SDK do Android.
Etapa 2: Defina sua fábrica de notificações personalizada
Para instruir a Braze a usar sua fábrica de notificações personalizada, use o método setCustomBrazeNotificationFactory
para definir seu IBrazeNotificationFactory
:
1
setCustomBrazeNotificationFactory(IBrazeNotificationFactory brazeNotificationFactory);
1
setCustomBrazeNotificationFactory(brazeNotificationFactory: IBrazeNotificationFactory)
O local recomendado para definir seu IBrazeNotificationFactory
personalizado é no método (não na atividade) do ciclo de vida do aplicativo Application.onCreate()
. Isso permitirá que a fábrica de notificações seja definida corretamente sempre que o processo do seu app estiver ativo.
Criar sua própria notificação do zero é um caso de uso avançado e deve ser feito somente com testes completos e um profundo conhecimento da funcionalidade push da Braze. Por exemplo, é preciso garantir que a notificação por push seja aberta corretamente.
Para cancelar sua configuração personalizada IBrazeNotificationFactory
e retornar ao tratamento padrão do Braze para push, passe o endereço null
para o nosso configurador de fábrica de notificações personalizadas:
1
setCustomBrazeNotificationFactory(null);
1
setCustomBrazeNotificationFactory(null)
Texto do multiplicador de renderização
Na versão 3.1.1 do SDK da Braze, o HTML pode ser enviado a um dispositivo para renderizar o texto multiplicador nas notificações por push.
Esse exemplo é renderizado com o seguinte HTML:
1
2
3
<p><span style="color: #99cc00;">M</span>u<span style="color: #008080;">lti</span>Colo<span style="color: #ff6600;">r</span> <span style="color: #000080;">P</span><span style="color: #00ccff;">u</span><span style="color: #ff0000;">s</span><span style="color: #808080;">h</span></p>
<p><em>test</em> <span style="text-decoration: underline; background-color: #ff6600;"><strong>message</strong></span></p>
Lembre-se de que o Android limita quais elementos e tags HTML são válidos em suas notificações por push. Por exemplo, marquee
não é permitido.
A renderização de texto multicolorido é específica do dispositivo e pode não ser exibida com base no dispositivo ou na versão do Android.
Para renderizar texto multicolorido em uma notificação por push, você pode atualizar seu site braze.xml
ou BrazeConfig
:
Adicione o seguinte em braze.xml
:
1
<bool translatable="false" name="com_braze_push_notification_html_rendering_enabled">true</bool>
Adicione o seguinte em seu BrazeConfig
:
1
2
3
4
BrazeConfig brazeConfig = new BrazeConfig.Builder()
.setPushHtmlRenderingEnabled(true)
.build();
Braze.configure(this, brazeConfig);
1
2
3
4
val brazeConfig = BrazeConfig.Builder()
.setPushHtmlRenderingEnabled(true)
.build()
Braze.configure(this, brazeConfig)
Tags HTML suportadas
Atualmente, o Google não lista as tags HTML compatíveis com o Android diretamente em sua documentação - essas informações só podem ser encontradas no arquivo Html.java
do repositório Git. Tenha isso em mente ao consultar a tabela a seguir, pois essas informações foram extraídas desse arquivo e as tags HTML suportadas podem estar sujeitas a alterações.
Categoria | Tag HTML | Descrição |
---|---|---|
Estilo básico de texto | <b> , <strong> |
Texto em negrito |
<i> , <em> |
Texto em itálico | |
<u> |
Texto sublinhado | |
<s> , <strike> , <del> |
Texto riscado | |
<sup> |
Texto sobrescrito | |
<sub> |
Texto de inscrição | |
<tt> |
Texto em monoespaço | |
Tamanho/Fonte | <big> , <small> |
Alterações no tamanho relativo do texto |
<font color="..."> |
Define a cor do primeiro plano | |
<span> (com CSS em linha) |
Estilos em linha (e.g., cor, plano de fundo) | |
Parágrafo e bloco | <p> , <div> |
Seções em nível de bloco |
<br> |
Quebra de linha | |
<blockquote> |
Bloco citado | |
<ul> + <li> |
Lista não ordenada com marcadores | |
Títulos | <h1> - <h6> |
Títulos (vários tamanhos) |
Links e imagens | <a href="..."> |
Link clicável |
<img src="..."> |
Imagem inline | |
Outros em linha | <em> , <strong> , <dfn> , <cite> |
Sinônimos de itálico ou negrito |
Renderização de imagens em linha
Como funciona?
Você pode exibir uma imagem maior em sua notificação por push do Android usando o push de imagem em linha. Com esse design, os usuários não precisarão expandir manualmente o push para ampliar a imagem. Ao contrário das notificações por push normais do Android, as imagens inline por push têm uma proporção de 3:2.
Compatibilidade
Embora você possa enviar imagens em linha para qualquer dispositivo, os dispositivos e SDKs que não atenderem às versões mínimas exibirão uma imagem padrão. Para que as imagens em linha sejam exibidas corretamente, são necessários o SDK do Braze para Android v10.0.0+ e um dispositivo com Android M+.
Os dispositivos que executam o Android 12 serão renderizados de forma diferente devido a alterações nos estilos de notificação por push personalizados.
Envio de um push de imagem em linha
Ao criar uma mensagem push para Android, esse recurso está disponível no menu suspenso Notification Type (Tipo de notificação ).
Configurações
Há muitas configurações avançadas disponíveis para notificações por push do Android enviadas pelo dashboard do Braze. Este artigo descreverá esses recursos e como usá-los com sucesso.
ID da notificação
Um ID de Notificação é um identificador único para uma categoria de mensagem de sua escolha que informa o serviço de envio de mensagens a respeitar apenas a mensagem mais recente desse ID. Definir um ID de notificação permite que você envie apenas a mensagem mais recente e relevante, em vez de uma pilha de mensagens desatualizadas e irrelevantes.
Prioridade de entrega de mensagem do Firebase
O campo Prioridade de entrega de mensagem do Firebase permite que você controle se um push é enviado com prioridade “normal” ou “alta” para o Firebase Cloud Messaging.
Time to live (TTL)
O campo TTL permite que você defina um tempo personalizado para armazenar mensagens com o serviço de push de envio de mensagens. Os valores padrão para TTL são quatro semanas para FCM e 31 dias para ADM.
Texto resumido
O texto de resumo permite que você defina texto adicional na visualização expandida da notificação. Também serve como uma legenda para notificações com imagens.
O texto do resumo será exibido sob o corpo da mensagem na exibição expandida.
Para notificações por push que incluem imagens, o texto da mensagem será mostrado na exibição recolhida, enquanto o texto do resumo será exibido como a legenda da imagem quando a notificação for expandida.
URIs personalizados
O recurso Custom URI permite que você especifique um URL da Web ou um recurso do Android para navegar quando a notificação for clicada. Se nenhum URI personalizado for especificado, clicar na notificação leva os usuários para o seu app. Você pode usar o URI personalizado para deep link dentro do seu app e direcionar os usuários para recursos que existem fora do seu app. Isso pode ser especificado por meio da API de envio de mensagens ou de nosso dashboard, em Advanced Settings (Configurações avançadas), no criador de mensagens push, conforme ilustrado:
Prioridade de exibição de notificação
A configuração Prioridade de exibição de notificação não é mais usada em dispositivos com Android O ou mais recente. Para dispositivos mais novos, defina a prioridade por meio da configuração do canal de notificação.
O nível de prioridade de uma notificação por push afeta a forma como a notificação é exibida na bandeja de notificações em relação a outras notificações. Também pode afetar a velocidade e a maneira de entrega, pois mensagens normais e de baixa prioridade podem ser enviadas com uma latência ligeiramente maior ou agrupadas para preservar a vida útil da bateria, enquanto mensagens de alta prioridade são sempre enviadas imediatamente.
No Android O, a prioridade de notificação se tornou uma propriedade dos canais de notificação. Você precisará trabalhar com seu desenvolvedor para definir a prioridade de um canal durante sua configuração e, em seguida, usar o dashboard para selecionar o canal adequado ao enviar seus sons de notificação. Para dispositivos que executam versões do Android anteriores ao O, a especificação de um nível de prioridade para notificações do Android é possível por meio do dashboard do Braze e da API de envio de mensagens.
Para enviar mensagens para toda a sua base de usuários com uma prioridade específica, recomendamos especificar indiretamente a prioridade por meio da configuração do canal de envio de mensagens (para direcionar dispositivos O+) e enviar a prioridade individual a partir do dashboard (para direcionar dispositivos <O).
Os níveis de prioridade que você pode definir em notificações por push do Android ou Fire OS são:
Prioridade | Descrição/Utilização Pretendida | priority valor (para mensagens de API) |
---|---|---|
Máx. | Mensagens urgentes ou críticas de tempo | 2 |
Alta | Comunicação importante, como uma nova mensagem de um amigo | 1 |
Padrão | A maioria das notificações - use se sua mensagem não se enquadrar explicitamente em nenhum dos outros tipos de prioridade | 0 |
Baixa | Informações que você deseja que os usuários saibam, mas que não exigem ação imediata | -1 |
Mín. | Informações contextuais ou de fundo. | -2 |
Para saber mais, consulte a documentação de notificação do Android do Google.
Sons
No Android O, os sons de notificação se tornaram uma propriedade dos canais de notificação. Você precisará trabalhar com seu desenvolvedor para definir o som de um canal durante sua configuração e, em seguida, usar o dashboard para selecionar o canal adequado ao enviar suas notificações.
Para dispositivos executando versões do Android anteriores ao O, o Braze permite que você defina o som de uma mensagem push individual através do criador do dashboard. Você pode fazer isso especificando um recurso de som local no dispositivo (por exemplo, android.resource://com.mycompany.myapp/raw/mysound
). Especificar “padrão” neste campo reproduzirá o som de notificação padrão no dispositivo. Isso pode ser especificado por meio da API de envio de mensagens ou do dashboard em Configurações avançadas no criador do push.
Digite o URI completo do recurso de som (por exemplo, android.resource://com.mycompany.myapp/raw/mysound
) no prompt do dashboard.
Para enviar mensagens para toda a sua base de usuários com um som específico, recomendamos que especifique indiretamente o som por meio da configuração do canal de envio de mensagens (para direcionar dispositivos O+) e envie o som individual a partir do dashboard (para direcionar dispositivos <O).
Pré-requisitos
Antes de usar este recurso, você precisará integrar o SDK Swift Braze. Você também precisará configurar notificações por push.
Personalização de botões de ação
O Braze Swift SDK fornece suporte ao manuseio de URL para botões de ação por push. Há quatro conjuntos de botões de ação por push padrão para as categorias de push padrão da Braze: Accept/Decline
, Yes/No
, Confirm/Cancel
, e More
.
Registro manual de botões de ação
O registro manual de botões de ação por push não é recomendado.
Se as notificações por push forem configuradas usando a opção de configuração configuration.push.automation
, o Braze registrará automaticamente os botões de ação por push para as categorias padrão e cuidará da análise de dados de cliques nos botões de ação por push e do roteamento de URL.
No entanto, você pode optar por registrar manualmente os botões de ação por push.
Etapa 1: Adição de categorias push padrão do Braze
Use o seguinte código para se registrar nas categorias push padrão ao se registrar no push:
a
1
UNUserNotificationCenter.current().setNotificationCategories(Braze.Notifications.categories)
1
[[UNUserNotificationCenter currentNotificationCenter] setNotificationCategories:BRZNotifications.categories];
Clicar nos botões de ação por push com o modo de ativação em segundo plano apenas descartará a notificação e não abrirá o app. Na próxima vez que o usuário abrir o app, a análise de dados do clique do botão para essas ações será enviada para o servidor.
Etapa 2: Ativar o manuseio interativo de push
Para ativar a manipulação de nossos botões de ação por push, incluindo análise de dados de cliques e roteamento de URL, adicione o seguinte código ao método delegado didReceive(_:completionHandler:)
do seu app:
1
AppDelegate.braze?.notifications.handleUserNotification(response: response, withCompletionHandler: completionHandler)
1
2
[AppDelegate.braze.notifications handleUserNotificationWithResponse:response
withCompletionHandler:completionHandler];
Se você usar a estrutura UNNotification
e tiver implementado os métodos de notificação do Braze, já deverá ter esse método integrado.
Personalização de categorias push
Além de fornecer um conjunto de categorias de notificação por push padrão, o Braze oferece suporte a categorias e ações de notificação personalizadas. Depois de registrar as categorias no seu aplicativo, você pode usar o dashboard do Braze para enviar essas categorias de notificação personalizadas aos seus usuários.
Aqui está um exemplo que aproveita o endereço LIKE_CATEGORY
exibido no dispositivo:
Etapa 1: Registre uma categoria
Para registrar uma categoria no seu app, use uma abordagem semelhante à seguinte:
1
2
3
4
5
6
7
8
9
10
Braze.Notifications.categories.insert(
.init(identifier: "LIKE_CATEGORY",
actions: [
.init(identifier: "LIKE_IDENTIFIER", title: "Like", options: [.foreground]),
.init(identifier: "UNLIKE_IDENTIFIER", title: "Unlike", options: [.foreground])
],
intentIdentifiers: []
)
)
UNUserNotificationCenter.current().setNotificationCategories(Braze.Notifications.categories)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
NSMutableSet<UNNotificationCategory *> *categories = [BRZNotifications.categories mutableCopy];
UNNotificationAction *likeAction = [UNNotificationAction actionWithIdentifier:@"LIKE_IDENTIFIER"
title:@"Like"
options:UNNotificationActionOptionForeground];
UNNotificationAction *unlikeAction = [UNNotificationAction actionWithIdentifier:@"UNLIKE_IDENTIFIER"
title:@"Unlike"
options:UNNotificationActionOptionForeground];
UNNotificationCategory *likeCategory = [UNNotificationCategory categoryWithIdentifier:@"LIKE_CATEGORY"
actions:@[likeAction, unlikeAction]
intentIdentifiers:@[]
options:UNNotificationCategoryOptionNone];
[categories addObject:likeCategory];
[UNUserNotificationCenter.currentNotificationCenter setNotificationCategories:categories];
Ao criar um UNNotificationAction
, você pode especificar uma lista de opções de ação. Por exemplo, UNNotificationActionOptions.foreground
permite que os usuários abram o app depois de tocar no botão de ação. Isso é necessário para comportamentos de navegação ao clicar, como “Abrir app” e “Deep link com o app”. Para saber mais, consulte UNNotificationActionOptions
.
Etapa 2: Selecione suas categorias
Depois de registrar uma categoria, use o dashboard do Braze para enviar notificações desse tipo aos usuários.
Só é necessário definir categorias de notificação personalizadas para botões de ação com ações especiais, como deep links em seu app ou abertura de URL. Não é necessário defini-las para botões de ação que apenas descartam uma notificação.
- No dashboard do Braze, selecione Envio de mensagens > Notificações por push e, em seguida, escolha sua campanha de push para iOS.
- Em Compose push notification (Notificação por push de composição), ative os botões de ação.
- No menu suspenso Categoria de notificação do iOS, selecione Inserir categoria personalizada pré-registrada do iOS.
- Por fim, insira uma das categorias que você criou anteriormente. O exemplo a seguir usa a categoria personalizada:
LIKE_CATEGORY
.
Personalização de crachás
Os emblemas são ícones pequenos, ideais para chamar a atenção do usuário. Você pode especificar uma contagem de crachás nas Configurações ao criar uma notificação por push usando o dashboard do Braze. Você também pode atualizar a contagem de emblemas manualmente por meio da propriedade applicationIconBadgeNumber
do aplicativo ou da carga útil da notificação remota.
O Braze limpará automaticamente a contagem de emblemas quando uma notificação do Braze for recebida enquanto o app estiver em primeiro plano. A configuração manual do número do crachá como 0 também limpará as notificações na central de notificações.
Se você não tiver um plano para limpar os crachás como parte da operação normal do aplicativo ou enviando pushs que limpem o crachá, deverá limpar o crachá quando o aplicativo se tornar ativo, adicionando o seguinte código ao método delegado applicationDidBecomeActive:
do seu aplicativo:
1
2
3
4
5
6
7
8
9
10
// For iOS 16.0+
let center = UNUserNotificationCenter.current()
do {
try await center.setBadgeCount(0)
} catch {
// Handle errors
}
// Prior to iOS 16. Deprecated in iOS 17+.
UIApplication.shared.applicationIconBadgeNumber = 0
1
2
3
4
5
6
7
8
9
10
// For iOS 16.0+
UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter];
[center setBadgeCount:0 withCompletionHandler:^(NSError * _Nullable error) {
if (error != nil) {
// Handle errors
}
}];
// Prior to iOS 16. Deprecated in iOS 17+.
[UIApplication sharedApplication].applicationIconBadgeNumber = 0;
Personalização de sons
Etapa 1: Hospede o som em seu app
Os sons de notificação por push personalizados devem ser hospedados localmente no pacote principal de seu app. São aceitos os seguintes formatos de dados de áudio:
- PCM linear
- MA4
- µLaw
- aLaw
É possível empacotar os dados de áudio em um arquivo AIFF, WAV ou CAF. No Xcode, adicione o arquivo de som ao seu projeto como um recurso não localizado do pacote de aplicativos.
Os sons personalizados devem ter menos de 30 segundos quando reproduzidos. Se um som personalizado estiver acima desse limite, o som padrão do sistema será reproduzido.
Conversão de arquivos de som
Você pode usar a ferramenta afconvert para converter sons. Por exemplo, para converter o som do sistema PCM linear de 16 bits Submarine.aiff para áudio IMA4 em um arquivo CAF, use o seguinte comando no terminal:
1
afconvert /System/Library/Sounds/Submarine.aiff ~/Desktop/sub.caf -d ima4 -f caff -v
Você pode inspecionar um som para determinar seu formato de dados abrindo-o no QuickTime Player e escolhendo Mostrar Inspetor de Filme no menu Filme.
Etapa 2: Forneça um URL de protocolo para o som
Você deve especificar um URL de protocolo que direcione para o local do arquivo de som em seu app. Há dois métodos para fazer isso:
- Use o parâmetro
sound
do objeto Apple push para passar o URL para o Braze. - Especifique o URL no dashboard. No criador do push, selecione Configurações e insira o URL do protocolo no campo Som.
Se o arquivo de som especificado não existir ou se a palavra-chave “default” for inserida, a Braze usará o som de alerta padrão do dispositivo. Além de nosso dashboard, o som também pode ser configurado por meio de nossa [API de envio de mensagens][12].
Consulte a documentação para desenvolvedores da Apple sobre a preparação de sons de alerta personalizados para obter informações adicionais.
Configurações
Ao criar uma campanha push por meio do dashboard, clique na guia Settings (Configurações) na etapa Compose (Redigir ) para visualizar as configurações avançadas disponíveis.
Pares de valores chave
A Braze permite que você envie pares de chave/valor de string personalizados, conhecidos como extras
, juntamente com uma notificação por push para o seu app. Os extras podem ser definidos por meio do dashboard ou da API e estarão disponíveis como pares de valores-chave no dicionário notification
passado para suas implementações de delegados push.
Opções de alerta
Marque a caixa de seleção Opções de alerta para ver um menu suspenso de valores-chave disponíveis para ajustar como a notificação aparece nos dispositivos.
Adição do sinalizador content-available
Marque a caixa de seleção Adicionar sinalizador de conteúdo disponível para instruir os dispositivos a baixar novos conteúdos em segundo plano. Geralmente, isso pode ser verificado se você estiver interessado em enviar notificações silenciosas.
Adição do sinalizador de conteúdo mutável
Marque a caixa de seleção Add Mutable-Content Flag (Adicionar sinalizador de conteúdo mutável ) para ativar a capacitação avançada do receptor. Esse sinalizador será enviado automaticamente ao criar uma notificação Rich, independentemente do valor dessa caixa de seleção.
ID de recolhimento
Especifique uma ID de recolhimento para agrupar notificações semelhantes. Se você enviar várias notificações com a mesma ID de colapso, o dispositivo mostrará apenas a notificação recebida mais recentemente. Consulte a documentação da Apple sobre notificações agrupadas.
Expiração
Ao marcar a caixa de seleção Vencimento, você poderá definir um tempo de expiração para sua mensagem. Se o dispositivo de um usuário perder a conectividade, o Braze continuará a tentar enviar a mensagem até o horário especificado. Se isso não for definido, a plataforma terá como padrão uma expiração de 30 dias. Observe que as notificações por push que expiram antes da entrega não são consideradas falhas e não serão registradas como bounce.
Pré-requisitos
Antes de poder usar esse recurso, você precisará integrar o Android Braze SDK. Você também precisará configurar notificações por push.
Configurações
Há muitas configurações avançadas disponíveis para as notificações por push do FireOS enviadas pelo dashboard do Braze. Este artigo descreverá esses recursos e como usá-los com sucesso.
Time-To-Live (TTL)
O campo TTL permite que você defina um tempo personalizado para armazenar mensagens com o serviço de push de envio de mensagens. Os valores padrão para TTL são quatro semanas para FCM e 31 dias para ADM.
Texto resumido
O texto de resumo permite que você defina texto adicional na visualização expandida da notificação. Também serve como uma legenda para notificações com imagens.
O texto do resumo será exibido sob o corpo da mensagem na exibição expandida.
Para notificações por push que incluem imagens, o texto da mensagem será mostrado na exibição recolhida, enquanto o texto do resumo será exibido como a legenda da imagem quando a notificação for expandida.
URIs personalizados
O recurso Custom URI permite que você especifique um URL da Web ou um recurso do Android para navegar quando a notificação for clicada. Se nenhum URI personalizado for especificado, clicar na notificação leva os usuários para o seu app. Você pode usar o URI personalizado para deep link dentro do seu app e direcionar os usuários para recursos que existem fora do seu app. Isso pode ser especificado por meio da API de envio de mensagens ou de nosso dashboard, em Advanced Settings (Configurações avançadas), no criador de mensagens push, conforme ilustrado:
Prioridade de exibição de notificação
A configuração Prioridade de exibição de notificação não é mais usada em dispositivos com Android O ou mais recente. Para dispositivos mais novos, defina a prioridade por meio da configuração do canal de notificação.
O nível de prioridade de uma notificação por push afeta como sua notificação é exibida na bandeja de notificações em relação a outras notificações. Também pode afetar a velocidade e a maneira de entrega, pois mensagens normais e de baixa prioridade podem ser enviadas com uma latência ligeiramente maior ou agrupadas para preservar a vida útil da bateria, enquanto mensagens de alta prioridade são sempre enviadas imediatamente.
No Android O, a prioridade de notificação se tornou uma propriedade dos canais de notificação. Você precisará trabalhar com seu desenvolvedor para definir a prioridade de um canal durante sua configuração e, em seguida, usar o dashboard para selecionar o canal adequado ao enviar seus sons de notificação. Para dispositivos que executam versões do Android anteriores ao O, é possível especificar um nível de prioridade para as notificações do FireOS por meio do dashboard do Braze e da API de envio de mensagens.
Para enviar mensagens para toda a sua base de usuários com uma prioridade específica, recomendamos especificar indiretamente a prioridade por meio da configuração do canal de envio de mensagens (para direcionar dispositivos O+) e enviar a prioridade individual a partir do dashboard (para direcionar dispositivos <O).
Os níveis de prioridade que você pode definir nas notificações por push do Fire OS são
Prioridade | Descrição/Utilização Pretendida | priority valor (para mensagens de API) |
---|---|---|
Máx. | Mensagens urgentes ou críticas de tempo | 2 |
Alta | Comunicação importante, como uma nova mensagem de um amigo | 1 |
Padrão | A maioria das notificações - use se sua mensagem não se enquadrar explicitamente em nenhum dos outros tipos de prioridade | 0 |
Baixa | Informações que você deseja que os usuários saibam, mas que não exigem ação imediata | -1 |
Mín. | Informações contextuais ou de fundo. | -2 |
Para saber mais, consulte a documentação de notificação do Android do Google.
Sons
No Android O, os sons de notificação se tornaram uma propriedade dos canais de notificação. Você precisará trabalhar com seu desenvolvedor para definir o som de um canal durante sua configuração e, em seguida, usar o dashboard para selecionar o canal adequado ao enviar suas notificações.
Para dispositivos executando versões do Android anteriores ao O, o Braze permite que você defina o som de uma mensagem push individual através do criador do dashboard. Você pode fazer isso especificando um recurso de som local no dispositivo (por exemplo, android.resource://com.mycompany.myapp/raw/mysound
). Especificar “padrão” neste campo reproduzirá o som de notificação padrão no dispositivo. Isso pode ser especificado por meio da API de envio de mensagens ou do dashboard em Configurações no criador de mensagens push.
Digite o URI completo do recurso de som (por exemplo, android.resource://com.mycompany.myapp/raw/mysound
) no prompt do dashboard.
Para enviar mensagens para toda a sua base de usuários com um som específico, recomendamos que especifique indiretamente o som por meio da configuração do canal de envio de mensagens (para direcionar dispositivos O+) e envie o som individual a partir do dashboard (para direcionar dispositivos <O).