Adicionar recursos a atalhos
Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
Os recursos em shortcuts.xml
permitem que você declare os tipos de ações que os usuários
podem realizar para iniciar o app e executar diretamente uma tarefa específica.
Por exemplo, as ações de app do Google Assistente usam recursos para permitir que os desenvolvedores
estendam recursos no aplicativo para intents integradas (BIIs), permitindo que os usuários ativem
e controlem esses recursos usando comandos falados. Um recurso consiste no
nome da ação e em um intent
direcionado ao destino no app que
resolve a intenção do usuário.
Definir recursos em atalhos.xml
Você define elementos capability
em um arquivo de recurso shortcuts.xml
no
projeto de desenvolvimento do app Android. Para definir um elemento capability
, faça o seguinte:
- Crie um recurso
shortcuts.xml
seguindo as instruções em Criar
atalhos estáticos.
Inclua no seu recurso as seguintes informações necessárias:
Nome do recurso:a ação que você quer que seu app aceite. Consulte a documentação do componente para o recurso que requer definições de capacidade. Os comandos ativados por voz das ações no app usam a BII Action ID
para nomes de recursos, que podem ser encontrados na referência de BIIs. Por exemplo, o BII GET_THING
lista o Action ID
como actions.intent.GET_THING
.
Destino do app:o destino no seu app que a ação lança para
atender à solicitação do usuário. Defina os destinos de aplicativos usando elementos intent
aninhados dentro de capability
.
Mapeamentos de parâmetros:cada intent
pode conter parâmetros a serem
transmitidos como dados extra
do intent. Por exemplo, cada BII de ações do app
inclui campos que representam informações que os usuários geralmente fornecem em consultas que
acionam o BII.
O exemplo a seguir demonstra uma definição de recursos em shortcuts.xml
para actions.intent.START_EXERCISE
, uma BII que permite que os usuários usem comandos falados
com o Google Assistente para iniciar um treino em um app fitness:
<shortcuts xmlns:android="http://schemas.android.com/apk/res/android">
<capability android:name="actions.intent.START_EXERCISE">
<intent
android:action="android.intent.action.VIEW"
android:targetPackage="com.example.sampleApp"
android:targetClass="com.example.sampleApp.ExerciseActivity">
<parameter
android:name="exercise.name"
android:key="exerciseType"/>
</intent>
</capability>
</shortcuts>
No exemplo anterior, o atributo <capability>
android:name
se refere ao
BII START_EXERCISE
. Se um usuário invocar essa BII pedindo ao Assistente, "Ok
Google, inicie uma execução em ExampleApp", o Assistente atenderá a solicitação usando
as informações fornecidas no elemento intent
aninhado. O intent
neste exemplo
define os seguintes detalhes:
- O
android:targetPackage
define o pacote do aplicativo de destino para este
intent.
- O campo
android:targetClass
especifica a atividade de destino:
com.example.sampleApp.ExerciseActivity
.
- A intent
parameter
declara a compatibilidade com um parâmetro de BII
exercise.name
e como transmitir o valor do parâmetro, coletado
do usuário, como dados extras no intent
.
Associar atalhos a um recurso
Depois de definir um recurso, é possível estender a funcionalidade associando
atalhos estáticos ou dinâmicos a ele. A forma como os atalhos são vinculados a um capability
depende do recurso que está sendo implementado e das palavras reais incluídas na
solicitação do usuário. Por exemplo, quando um usuário inicia uma corrida no seu app de rastreamento de condicionamento físico
perguntando ao Google Assistente: "Ok Google, inicie uma corrida no ExampleApp". O Google Assistente
pode usar um atalho para iniciar uma instância de um capability
que define uma
entidade de exercício válida de "corrida" para o parâmetro exercise.name
.
Para mais informações sobre como associar atalhos às ações do app, consulte a Visão geral das ações no app.
O conteúdo e os exemplos de código nesta página estão sujeitos às licenças descritas na Licença de conteúdo. Java e OpenJDK são marcas registradas da Oracle e/ou suas afiliadas.
Última atualização 2025-08-27 UTC.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Não contém as informações de que eu preciso","missingTheInformationINeed","thumb-down"],["Muito complicado / etapas demais","tooComplicatedTooManySteps","thumb-down"],["Desatualizado","outOfDate","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Problema com as amostras / o código","samplesCodeIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-08-27 UTC."],[],[],null,["Capabilities in `shortcuts.xml` let you declare the types of actions users can\ntake to launch your app and directly perform a specific task.\n\nFor example, Google Assistant App Actions use capabilities to let developers\nextend in-app features to [built-in intents](//developers.google.com/assistant/app/intents) (BIIs), letting users activate\nand control those features using spoken commands. A capability consists of the\nname of the action and an `intent` targeting the destination in your app that\nresolves the user intent.\n\nDefine capabilities in shortcuts.xml\n\nYou define `capability` elements in a `shortcuts.xml` resource file in your\nAndroid app development project. To define a `capability` element, do the\nfollowing:\n\n1. Create a `shortcuts.xml` resource by following the instructions in [Create\n static shortcuts](//develop/ui/views/launch/shortcuts/creating-shortcuts#static).\n2. Include the following required information in your capability:\n\n - **Capability name:** the action you want your app to support. Refer to\n the component documentation for the feature that requires capability\n definitions. App Actions voice-enabled commands use the BII `Action ID`\n for capability names, which you can find in [BII reference](//developers.google.com/assistant/app/reference/built-in-intents). For example,\n the [`GET_THING`](//developers.google.com/assistant/app/reference/built-in-intents/common/get-thing) BII lists its `Action ID` as `actions.intent.GET_THING`.\n\n - **App destination:** the destination in your app the action launches to\n fulfill the user request. Define app destinations using `intent` elements\n nested within the `capability`.\n\n - **Parameter mappings:** each `intent` might contain parameters to be\n passed as `extra` data of the intent. For example, each App Actions BII\n includes fields representing information users often provide in queries that\n trigger the BII.\n\nThe following example demonstrates a capability definition in `shortcuts.xml`\nfor [`actions.intent.START_EXERCISE`](//developers.google.com/assistant/app/reference/built-in-intents/health-and-fitness/start-exercise), a BII that lets users use spoken\ncommands with Assistant to begin a workout in a fitness app: \n\n \u003cshortcuts xmlns:android=\"http://schemas.android.com/apk/res/android\"\u003e\n \u003ccapability android:name=\"actions.intent.START_EXERCISE\"\u003e\n \u003cintent\n android:action=\"android.intent.action.VIEW\"\n android:targetPackage=\"com.example.sampleApp\"\n android:targetClass=\"com.example.sampleApp.ExerciseActivity\"\u003e\n \u003cparameter\n android:name=\"exercise.name\"\n android:key=\"exerciseType\"/\u003e\n \u003c/intent\u003e\n \u003c/capability\u003e\n \u003c/shortcuts\u003e\n\nIn the preceding example, the `\u003ccapability\u003e` `android:name` attribute refers to\nthe `START_EXERCISE` BII. If a user invokes this BII by asking Assistant, *\"Hey\nGoogle, start a run in ExampleApp,\"* Assistant fulfills the user request using\ninformation provided in the nested `intent` element. The `intent` in this sample\ndefines the following details:\n\n- The `android:targetPackage` sets the target application package for this intent.\n- The `android:targetClass` field specifies the destination activity: `com.example.sampleApp.ExerciseActivity`.\n- The intent `parameter` declares support for a BII parameter [`exercise.name`](//developers.google.com/assistant/app/reference/built-in-intents/health-and-fitness/start-exercise#recommended-fields) and how to pass the parameter value---collected from the user---as extra data in the `intent`.\n\nAssociate shortcuts with a capability\n\nOnce you define a capability, you can extend its functionality by associating\nstatic or dynamic shortcuts with it. How shortcuts are linked to a `capability`\ndepends on the feature being implemented and the actual words included in a\nuser's request. For example, when a user begins a run in your fitness tracking\napp by asking Assistant, *\"Hey Google, start a run in ExampleApp.\"* Assistant\ncan use a shortcut to launch an instance of a `capability` that defines a valid\nexercise entity of \"run\" for the `exercise.name` parameter.\n\nFor more information about associating shortcuts to App Actions, see [App\nActions overview](//developers.google.com/assistant/app)."]]