Compreender os requisitos dos serviços em primeiro plano e das intenções de ecrã inteiro

Para permitir que os programadores criem apps que ofereçam uma experiência do utilizador consistente, estamos a introduzir tipos de serviços em primeiro plano adicionais, juntamente com um novo conjunto de restrições de políticas relacionadas. Este artigo explica os futuros requisitos dos serviços em primeiro plano e como declarar informações de serviços em primeiro plano na Play Console. Também especifica os requisitos para usar as notificações de intenções de ecrã inteiro.

Requisitos dos serviços em primeiro plano para o Android 14

Para ajudar a identificar os exemplos de utilização adequados para os serviços em primeiro plano e definir claramente a intenção do funcionamento em segundo plano da sua app, o Android 14 e superior requerem que faça o seguinte antes de usar um serviço em primeiro plano:

A secção Autorizações para serviços em primeiro plano (FGS) da nossa Política de Abuso na Rede e em Dispositivos descreve os critérios necessários para usar os serviços em primeiro plano em detalhe. Tem de declarar os tipos de serviços em primeiro plano quando atualizar para o Android 14.

Declarar as informações dos serviços em primeiro plano na Play Console

Quando as suas apps segmentarem o Android 14 e superior, tem de declarar todos os tipos de serviços em primeiro plano que usa numa nova declaração através da página Conteúdo da app (Política > Conteúdo da app) na Play Console.

Para cada tipo de serviço em primeiro plano que declarar, tem de fazer o seguinte:

  1. Facultar uma descrição da funcionalidade da app que está a usar cada tipo de serviço em primeiro plano.
  2. Descrever o impacto no utilizador se:
    • A tarefa for adiada pelo sistema (não é iniciada de imediato); e/ou
    • A tarefa for interrompida pelo sistema (pausada e/ou reiniciada).
  3. Incluir um link para um vídeo que demonstre cada funcionalidade de serviço em primeiro plano. O vídeo deve demonstrar os passos que o utilizador tem de seguir na app para acionar a funcionalidade.
  4. Escolha o exemplo de utilização específico para cada tipo de serviço em primeiro plano. É disponibilizada uma lista predefinida de exemplos de utilização à sua escolha. Alguns exemplos de utilização mapeados para tipos de serviços em primeiro plano são indicados no gráfico abaixo. Trata-se de uma lista não exaustiva. Se não vir o seu exemplo de utilização na lista, pode introduzi-lo manualmente.

    Para determinados exemplos de utilização, sugerimos a utilização de APIs alternativas. Para ver uma lista desses exemplos de utilização e das respetivas APIs recomendadas alternativas, visite o site para programadores Android.

Nota: abaixo encontra-se uma lista não exaustiva. Para determinar se o acesso é adequado aos FGS, consulte a política de Autorizações para serviços em primeiro plano (FGS) para exemplos de utilização que não sejam mencionados abaixo.

Tipo de FGS Exemplos de utilização Descrições e exemplos
TYPE_CAMERA Streaming da câmara em segundo plano Continue a aceder à câmara em segundo plano. Por exemplo, apps de chat de vídeo que permitem a execução de várias tarefas em simultâneo.
TYPE_CONNECTED_DEVICE Transferência de dados contínua para um dispositivo externo Interações com dispositivos externos, incluindo transferências de dados que requerem uma ligação Bluetooth, NFC, IV, USB ou de rede. Por exemplo, dispositivos de vestir, intercomunicadores de bebé, auscultadores com microfone integrado ou carro.
TYPE_DATA_SYNC Transferência de rede: cópia de segurança e restauro Use para funcionalidades especificamente iniciadas pelo utilizador. Por exemplo, selecionar uma foto específica para fazer uma cópia de segurança para a nuvem vs. cópia de segurança automática diária de todas as fotos novas.
Transferência de rede: carregar ou transferir Por exemplo, extração de dados ou processamento do lado do servidor.
Processamento local: transcodificação de multimédia Processo de conversão de ficheiros multimédia, como áudio e vídeo, de um formato para outro (por exemplo, funcionalidades como a edição de vídeos).
Processamento local: importar ou exportar Inclui a migração de ficheiros do cartão SD.
Processamento local: outro Use para trabalhos especificamente iniciados pelo utilizador e não para tarefas normais iniciadas pelo sistema ou servidor. Por exemplo, encriptação ou redimensionamento.
TYPE_HEALTH Sincronização de dados de saúde Sincronização de dados de saúde para apps na categoria de fitness, que pode ser em várias apps ou para reunir dados recolhidos através do acompanhamento no dispositivo. Por exemplo, contagem de passos ou acompanhamento de exercício.
TYPE_LOCATION Atualizações de localização em segundo plano: partilha de localização iniciada pelo utilizador Por exemplo, funcionalidade Localizar o meu amigo ou monitorização da atividade de veículos.
Atualizações de localização em segundo plano: navegação Por exemplo, continuar a navegação por carro em mapas ou monitorização de viagens para a partilha de viagens.
Geofencing Defina parâmetros em redor das áreas de interesse.
TYPE_MEDIA_PLAYBACK Reprodução de multimédia Continue a reprodução de áudio ou vídeo em segundo plano, incluindo streaming.
Apresentação do ecrã no ecrã Quando o conteúdo multimédia está no formato minimizado enquanto está aberto em segundo plano.
TYPE_MEDIA_PROJECTION Projeção de multimédia ou conteúdo e streaming ou gravação com a API MediaProjection Projete multimédia em ecrãs não principais ou dispositivos externos através das APIs MediaProjection, incluindo streaming.
TYPE_MICROPHONE Acesso a áudio em segundo plano Capture a entrada de áudio, por exemplo, comandos de voz para o assistente virtual sem guardar ou gravação de voz.
TYPE_PHONE_CALL Chamadas: APIs Cellular/VoiP/Telecom Suporta várias funcionalidades de telefone relacionadas com chamadas.
TYPE_REMOTE_MESSAGING Transmita comunicações de texto para outro dispositivo Ajuda os utilizadores nas tarefas de mensagens quando mudam de dispositivo, sem continuidade. Por exemplo, permita que os utilizadores enviem mensagens de texto através de um cliente Web lendo um código QR e estabelecendo uma ligação entre o cliente Web e o telemóvel. Não limitado a SMS.

A declaração vai ficar disponível a partir de novembro de 2023 e vamos dar-lhe tempo para preencher a declaração, receber feedback e fazer ajustes, se necessário.

Requisitos das intenções de ecrã inteiro para o Android 14

É recomendável usar notificações de intenções de ecrã inteiro para partilhar mensagens de prioridade elevada que requerem a atenção imediata do utilizador. Para garantir que esta autorização está limitada aos exemplos de utilização de prioridade elevada adequados, para o Android 14, vamos introduzir restrições à utilização da autorização USE_FULL_SCREEN_INTENT. Limitar as notificações desta forma ajuda a garantir uma melhor experiência para os utilizadores.

Perguntas frequentes

O que vai mudar relativamente aos serviços em primeiro plano no Android 14?

Vamos introduzir vários novos tipos de serviços em primeiro plano e vai ser obrigatório declarar um tipo de serviço em primeiro plano juntamente com a autorização de serviço em primeiro plano adequada. Por exemplo, se estiver a declarar o tipo de serviço em primeiro plano "câmara", também tem de declarar a autorização FOREGROUND_SERVICE_CAMERA. A sua utilização em primeiro plano também tem de estar em conformidade com os outros requisitos descritos na nossa Política de Abuso na Rede e em Dispositivos.

Como posso saber que tipo de serviço em primeiro plano usar?

Escolha o tipo de serviço em primeiro plano que corresponde melhor à utilização do serviço em primeiro plano pretendida. Por exemplo, uma app de exercício que monitoriza o exercício de um utilizador pode declarar o tipo de serviço em primeiro plano "saúde". Também pode escolher vários tipos de serviços em primeiro plano, se isso for aplicável à sua app.

O que é uma autorização de serviço em primeiro plano? Tem de ser concedida pelo utilizador antes de iniciar um serviço em primeiro plano?

Quando as apps que segmentam o Android 14 usam um serviço em primeiro plano, os programadores têm de declarar a autorização de serviço em primeiro plano adequada para esse tipo de serviço em primeiro plano específico. Por exemplo, se a sua app usar o tipo de serviço em primeiro plano "localização", tem de declarar a autorização FOREGROUND_SERVICE_LOCATION. As autorizações de serviços em primeiro plano que se referem a um tipo de serviço em primeiro plano específico são definidas como autorizações normais e são concedidas por predefinição no momento da instalação. Os utilizadores não podem revogar estas autorizações.

Existem requisitos adicionais para além da declaração da autorização de serviço em primeiro plano adequada?

Consoante o tipo de serviço em primeiro plano, podem existir requisitos de sistema adicionais. Algumas destas opções podem ser autorizações de tempo de execução e exigir que os utilizadores concedam autorização antes de poderem ser usadas. Por exemplo, se estiver a usar o tipo de serviço em primeiro plano "localização", o utilizador também tem de conceder a autorização ACCESS_COARSE_LOCATION ou ACCESS_FINE_LOCATION. Consulte a documentação para obter as informações mais recentes.

E se o meu exemplo de utilização em primeiro plano não corresponder a nenhum dos tipos de serviço em primeiro plano definidos?

Em cenários limitados, se o seu exemplo de utilização cumprir as outras caraterísticas necessárias para a utilização do serviço em primeiro plano (conforme descrito na política), pode declarar o tipo de serviço em primeiro plano TYPE_SPECIAL_USE. Todos os tipos de serviços em primeiro plano estão sujeitos a revisão.

O que significa "percetível pelo utilizador"?

"Percetível pelo utilizador" significa que o utilizador deve conseguir perceber que está a ser executada uma tarefa de serviço em primeiro plano no respetivo dispositivo. Pode considerar-se que os utilizadores perceberam isso se forem eles a iniciar a ação, por exemplo, tocar uma música ou monitorizar uma corrida. A sua app também pode fazer com que os utilizadores percebam que está em curso um serviço em primeiro plano ao apresentar uma notificação clara e precisa na barra de tarefas do dispositivo.

E se segmentar versões anteriores ao Android 14?

Se segmentar uma versão do Android anterior ao Android 14, continue a usar o atributo android:foregroundServiceType no elemento <service> do ficheiro de manifesto da sua app.

Qual é a diferença entre o tipo de serviço em primeiro plano dataSync e a transferência de dados iniciada pelo utilizador?

As tarefas de transferência de dados iniciadas pelo utilizador foram concebidas para simplificar as transferências de dados em toda a rede. Incluem o acompanhamento de restrições e a gestão automática de wake locks. O tipo de serviço em primeiro plano dataSync pode incluir a transferência de dados localmente ou através de uma rede e pode incluir o processamento de dados localmente no dispositivo. Se o seu exemplo de utilização for a transferência de dados através de uma rede (como Wi-Fi, dados móveis ou Bluetooth) em resposta a um pedido explícito do utilizador, recomendamos que use a tarefa de transferência de dados iniciada pelo utilizador em vez do tipo de serviço em primeiro plano dataSync.

O que vai mudar para a intenção de ecrã inteiro no Android 14?

Para o Android 14, a autorização USE_FULL_SCREEN_INTENT vai mudar de uma autorização normal para uma autorização de acesso especial a apps e a autorização USE_FULL_SCREEN_INTENT só vai ser concedida a apps cuja funcionalidade essencial seja um exemplo de utilização de prioridade elevada para definir um alarme ou receber chamadas telefónicas ou videochamadas. Pense na funcionalidade essencial como o objetivo principal da app, sem o qual a app é considerada danificada ou inutilizável. Outras apps podem continuar a usar a autorização, mas apenas depois de o utilizador lhes ter concedido autorização.

Quando é que estas alterações para a intenção de ecrã inteiro no Android 14 entram em vigor?

Estas alterações entram em vigor a 31 de maio de 2024.

Se a minha app for uma app de despertador ou uma app que recebe chamadas telefónicas ou videochamadas, como posso garantir que a autorização lhe é concedida automaticamente?

Quando a sua app segmentar o Android 14 e superior, vai ter a opção de declarar que a app é uma app com funcionalidades essenciais para intenção de ecrã inteiro na página Conteúdo da app (Política > Conteúdo da app) na Play Console. A declaração vai ficar disponível a partir de abril de 2024 e vamos dar-lhe tempo para a preencher.

A informação foi útil?

Como podemos melhorá-la?
true
Pesquisa
Limpar pesquisa
Fechar pesquisa
Menu principal
18418986926167422322
true
Pesquisar no Centro de ajuda
true
true
true
true
true
92637
false
false