--- title: "Caixa de entrada do Android" slug: "android-inbox" updated: 2026-06-12T10:30:51Z published: 2026-06-12T10:30:51Z canonical: "docs.xtremepush.com/android-inbox" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.xtremepush.com/llms.txt > Use this file to discover all available pages before exploring further. # Caixa de entrada do Android Guia de integração para implementar uma caixa de entrada no seu app Android O canal [da caixa de entrada](/documentation/docs/pt-br/campaign-inbox) permite que você persista as notificações enviadas para um usuário em uma caixa de entrada dentro do app. Também permite enviar mensagens para usuários que não aderiram a notificações push, pois essas mensagens chegam à caixa de entrada como um feed quando o app é aberto. Você também não está limitado pelo formato de notificação push e pode usar um estilo mais rico nas mensagens da caixa de entrada. ![1448](https://cdn.document360.io/b056e88b-f6c1-4bd2-b5b8-08e9336a17c9/Images/Documentation/43be41a-inbox_anroid(1).png?sv=2026-02-06&spr=https&st=2026-11-04T09%3A28%3A40Z&se=2026-11-04T10%3A28%3A40Z&sr=c&sp=r&sig=ip%2B1NXW9w5OMI8Gncj5%2Fc47KxWe%2BbOa2Vnp2RZbS%2BDc%3D) Exemplo da caixa de entrada integrada em um app Android. Guias de integração para a funcionalidade da caixa de entrada em aplicativos Android abaixo. > [!NOTE] > Certifique-se de ter configurado a caixa de entrada na plataforma antes de começar, isso é um pré-requisito. Confira nosso [guia rápido inicial na caixa de entrada](/documentation/docs/pt-br/quick-start-inbox) para mais detalhes. ## Configuração básica ### Ativando a caixa de entrada no seu app Android Na integração padrão descrita no [guia de integração do Android](/documentation/docs/pt-br/android-sdk-integration) , a caixa de entrada está desligada. Ele pode ser ativado usando o `setInboxEnabled` método. No seu app Android, onde você inicializa os objetos PushConnector, adicione o seguinte: ```java .setInboxEnabled(true) ``` Como mostrado abaixo: ```java mPushConnector = new PushConnector.Builder(XPUSH_APP_KEY, GOOGLE_PROJECT_NUMBER) // ...    .setInboxEnabled(true) // ...    .create(this); ``` Você também precisará adicionar um elemento de interface (um botão) para abrir a caixa de entrada. Quando tocado, esse botão abre a caixa de entrada. Você pode, por exemplo, querer adicionar um ícone de caixa de entrada ao menu da barra de ações ou em outro lugar da sua atividade: ![361](https://cdn.document360.io/b056e88b-f6c1-4bd2-b5b8-08e9336a17c9/Images/Documentation/fa1c69f-screenshot(1).png?sv=2026-02-06&spr=https&st=2026-11-04T09%3A28%3A40Z&se=2026-11-04T10%3A28%3A40Z&sr=c&sp=r&sig=ip%2B1NXW9w5OMI8Gncj5%2Fc47KxWe%2BbOa2Vnp2RZbS%2BDc%3D) Para adicionar o padrão `ImageButton` na barra de ações do app, substitua a `onCreateOptionsMenu` função na sua Atividade e chame a `inflateInboxMenuItem` função como visto aqui: ```java @Override public boolean onCreateOptionsMenu(Menu menu) {    PushConnector.mPushConnector.inflateInboxMenuItem(menu, this);    return true; } ``` Neste ponto, a caixa de entrada está totalmente integrada ao seu app e pode ser aberta clicando no ícone no menu da barra de ações. Além disso, crachás com uma contagem de novos itens na sua caixa de entrada serão exibidos automaticamente no botão da caixa de entrada, como visto aqui: ![1080](https://cdn.document360.io/b056e88b-f6c1-4bd2-b5b8-08e9336a17c9/Images/Documentation/13501b0-badges(1).png?sv=2026-02-06&spr=https&st=2026-11-04T09%3A28%3A40Z&se=2026-11-04T10%3A28%3A40Z&sr=c&sp=r&sig=ip%2B1NXW9w5OMI8Gncj5%2Fc47KxWe%2BbOa2Vnp2RZbS%2BDc%3D) ### Configure regras proguard para a caixa de entrada Se você está usando as regras Proguard para construir a versão lançada do app, a funcionalidade da caixa de entrada precisa de um conjunto adicional de regras. Por favor, adicione o seguinte ao seu `proguard-rules.pro` arquivo: ```Text # Required for inbox functionality -keepclassmembers class * { @android.webkit.JavascriptInterface ; } # Required for inbox functionality -keepattributes JavascriptInterface -keep public class ie.imobile.extremepush.ui.InboxActivity$InboxInterface -keep public class * implements ie.imobile.extremepush.ui.InboxActivity$InboxInterface -keepclassmembers class ie.imobile.extremepush.ui.InboxActivity$InboxInterface { ; } ``` A lista completa das regras Proguard necessárias para o Xtremepush SDK pode ser encontrada na página [de Integração com Android](/documentation/docs/pt-br/android-sdk-integration#configuring-proguard) . ## Opções Avançadas de Configuração Existem algumas opções avançadas de configuração, descritas aqui, que permitem executar as seguintes tarefas, se necessário, para o seu app: 1. [Mude o ícone do botão da caixa de entrada e/ou defina a cor do ícone](/documentation/docs/pt-br/android-inbox#change-inbox-icon-or-icon-colour) 2. [Desative os crachás no botão da caixa de entrada](/documentation/docs/pt-br/android-inbox#disable-badges-on-the-inbox-button) 3. [Altere o fundo do distintivo e as cores do texto](/documentation/docs/pt-br/android-inbox#change-the-badge-background-and-text-colours) 4. [Coloque o botão da caixa de entrada em outro lugar que não seja o menu da barra de ações](/documentation/docs/pt-br/inbox-android#place-the-inbox-button-somewhere-other-than-the-action-bar-menu) 5. [Use seu próprio botão para abrir a caixa de entrada](/documentation/docs/pt-br/android-inbox#use-your-own-button-for-opening-the-inbox) Cada uma dessas opções será agora descrita por sua vez: ### Mude ícone ou cor da caixa de entrada De forma semelhante a como o [ícone de notificação pode ser configurado para seu app](/documentation/docs/pt-br/android-custom-icon), a `setInboxIcon` função pode ser usada para mudar o ícone no botão da caixa de entrada. Também pode ser usado para mudar a cor do ícone. ```java mPushConnector = new PushConnector.Builder(XPUSH_APP_KEY, GOOGLE_PROJECT_NUMBER)    .setInboxEnabled(true)    .setInboxIcon("iconfilenamewithoutextension")    .create(this) ``` Isso vai definir o ícone do botão da caixa de entrada com uma imagem da `res/drawable` pasta do app. Neste exemplo, a biblioteca tentará procurar um arquivo chamado `iconfilenamewithoutextension.jpg` or `iconfilenamewithoutextension.png*`etc, na `res/drawable` pasta. Se o arquivo não for encontrado, o ícone padrão do botão da caixa de entrada será usado em seu lugar. A biblioteca também buscará uma entrada "cor" com o mesmo nome em um dos arquivos `res/values` XML para usar como filtro de cor sobre o ícone. Dessa forma, você pode definir a cor do ícone. Se nenhuma cor correspondente for encontrada em `res/values`, então nenhum filtro é aplicado ao ícone. A entrada `res/values` pode ser a seguinte: ```xml #ff2266ff ``` Aqui, o ícone foi alterado e um filtro de cor foi aplicado a ele: ![1080](https://cdn.document360.io/b056e88b-f6c1-4bd2-b5b8-08e9336a17c9/Images/Documentation/f88ece6-customIconColour(1).png?sv=2026-02-06&spr=https&st=2026-11-04T09%3A28%3A40Z&se=2026-11-04T10%3A28%3A40Z&sr=c&sp=r&sig=ip%2B1NXW9w5OMI8Gncj5%2Fc47KxWe%2BbOa2Vnp2RZbS%2BDc%3D) ### Desative os crachás no botão da caixa de entrada Você pode querer desativar os crachás no botão da caixa de entrada dentro do seu app. Para isso, por favor, use a `setInboxBadgeEnabled` função que pode ser vista aqui: ```java mPushConnector = new PushConnector.Builder(XPUSH_APP_KEY, GOOGLE_PROJECT_NUMBER)    .setInboxEnabled(true)    .setInboxBadgeEnabled(false)    .create(this) ``` ### Altere o fundo do distintivo e as cores do texto As cores padrão para o emblema do botão da caixa de entrada consistem em fundo vermelho e texto branco. Se você quiser alterar esses valores, pode usar a `setInboxBadgeColors` função, passando uma cor de fundo e uma cor de texto respectivamente como parâmetros. O exemplo abaixo mostra o código necessário para definir azul como cor de fundo e amarelo como cor do texto: ```java mPushConnector = new PushConnector.Builder(XPUSH_APP_KEY, GOOGLE_PROJECT_NUMBER)    .setInboxEnabled(true)    .setInboxBadgeColors("#ff0000ff", "#ffffff00")    .create(this) ``` ![1080](https://cdn.document360.io/b056e88b-f6c1-4bd2-b5b8-08e9336a17c9/Images/Documentation/89fd226-badgeColours(1).png?sv=2026-02-06&spr=https&st=2026-11-04T09%3A28%3A40Z&se=2026-11-04T10%3A28%3A40Z&sr=c&sp=r&sig=ip%2B1NXW9w5OMI8Gncj5%2Fc47KxWe%2BbOa2Vnp2RZbS%2BDc%3D) ### Coloque o botão da caixa de entrada em outro lugar que não seja o menu da barra de ações Os passos acima descreveram como o botão da caixa de entrada pode ser adicionado ao menu da barra de ações do app. O mesmo botão também pode ser adicionado em outro lugar do app, em vez de (ou em conjunto com) o botão do menu da barra de ações. Para colocar nosso botão na caixa de entrada em outro lugar do seu app que não seja o menu da barra de ações, há três etapas envolvidas: Primeiro, adicione uma referência ao botão da caixa de entrada na localização desejada nos arquivos XML do layout. Isso requer uma única linha: ```xml ``` Em segundo lugar, para quaisquer Atividades que utilizem os layouts XML acima, será necessário adicionar um `onClickListener` botão à caixa de entrada. Isso pode ser realizado implementando `View.OnClickListener` na Atividade e depois adicionando o seguinte à `onCreate` função da Atividade: ```java ImageButton inboxButton = (ImageButton) findViewById(R.id.xp_inbox_button); inboxButton.setOnClickListener(this); ``` Finalmente, na `onClick` função de retorno, abra a caixa de entrada usando a `openInbox` função, passando uma referência para a atividade: ```java @Override public void onClick(View v) {    switch (v.getId()) {        case R.id.xp_inbox_button:            mPushConnector.openInbox(this);            break;    } } ``` ### Use seu próprio botão para abrir a caixa de entrada Se você quiser usar seu próprio botão para abrir a caixa de entrada, isso pode ser feito usando a `openInbox` função. Isso pode ser visto logo acima, onde o código a seguir é usado na `onClick` função da classe Activity. ```java mPushConnector.openInbox(this); ``` Se você deseja lidar com os números dos distintivos também, criamos uma `InboxBadgeUpdateListener` interface que pode ser implementada pela sua subclasse Application da seguinte forma: ```java public class MyApplication extends Application implements InboxBadgeUpdateListener { ``` Quando isso for feito, sua Solicitação receberá uma chamada de retorno sempre que o número do crachá da caixa de entrada for atualizado. Aqui está a função que será chamada na atualização do número do distintivo: ```java @Override public void inboxBadgeUpdated(int badge, WeakReference uiReference) {    //Handle badge number here } ``` Uma referência a essa implementação `InboxBadgeUpdateListener` do também precisa ser repassada para nosso SDK ao inicializar o objeto PushConnector no seu app. Isso pode ser alcançado usando a `setInboxBadgeUpdateListener` função: ```java mPushConnector = new PushConnector.Builder(XPUSH_APP_KEY, GOOGLE_PROJECT_NUMBER)    .setInboxEnabled(true)    .setInboxBadgeUpdateListener(this)    .create(this) ```