Tópicos abordados:
Requisitos:
Uma ação customizada é uma ação com um comportamento especifico criada para seu caso de uso. O Beagle possui uma série de ações padrão, no entanto, pode haver algum uso que necessite de uma funcionalidade que não é padrão, como por exemplo, abrir uma interface de câmera em um celular.
Para mais informações sobre ações padronizadas do Beagle, veja a seção Tipos de Ações..
Para criar uma ação personalizada é necessário:
1. Criar uma classe anotada com @RegisterAction
, e implementar a interface Action
, no Frontend e no Backend da sua aplicação;
2. Colocar o nome da ação por parâmetro da annotation para evitar possíveis problemas com o Proguard. Certifique que a ação tem o mesmo nome no Frontend e no Backend;
3. Implemente o método execute
(somente no Frontend).
O atributo value
é um exemplo de parâmetro que pode ser declarado no construtor dessa classe, você pode usar quantos precisar.
O exemplo a seguir mostra uma ação customizada para executar um Toast recebendo um texto no parâmetro value
:
@RegisterAction("customActionAndroid")
data class CustomActionAndroid(
val value: String
) : Action {
override fun execute(rootView: RootView) {
Toast.makeText(
rootView.getContext(),
value,
Toast.LENGTH_SHORT
).show()
}
}
@RegisterAction("customActionAndroid")
data class CustomActionAndroid(
val value: String
) : Action
value
para guardar a mensagem que o Toast irá utilizar.Abaixo temos o JSON que representa essa ação sendo chamada a partir do click de um botão:
{
"_beagleComponent_": "beagle:button",
"text": "Beagle Button",
"onPress": [
{
"_beagleAction_": "custom:myCustomAction",
"value": "ParameterForAction."
}
]
}
@RegisterAction("className")
onde className
é o nome da sua classePara utilizar uma ação customizada, declare-a em um componente que execute ações, como por exemplo, um Botão
.
No exemplo abaixo, a ação é declarada no atributo onPress
do botão:
Button(
text = text,
styleId = styleId,
onPress = listOf(
CustomActionAndroid("Sou uma ação customizada")
)
)
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.