Beagle v1.6 não é mais mantida ativamente. A versão documentada que você está visualizando pode conter funcionalidades depreciadas. Para obter as funcionalidades mais recentes, consulte a nossa última versão .
Para criar uma ação customizada no Beagle cuja execução seja assíncrona como o consumo de uma API ou acesso a um banco de dados, basta criar uma action
normalmente como o exemplo anterior detalhou e implementar a interface AsyncAction
.
Com a action criada, basta vincular a interface AsyncAction
e delegar sua implementação para a classe AsyncActionImpl
que o Beagle já fornece.
onActionStarted
e onActionFinished
expondo seu estado de forma reativa e padronizado no framework.@RegisterAction
data class CustomActionAndroid(
val value: String
) : Action, AsyncAction by AsyncActionImpl() {
override fun execute(rootView: RootView) {
// Do asynchronous work
}
}
Agora, com a action pronta para executar de forma assincrona, temos que OBRIGATORIAMENTE notificar quando sua execução está concluída através do método onActionFinished
.
@RegisterAction
data class CustomActionAndroid(
val value: String
) : Action, AsyncAction by AsyncActionImpl() {
override fun execute(rootView: RootView) {
// Do asynchronous work
onActionFinished()
}
}
Pronto! Sua action agora está configurada para executar qualquer trabalho de forma assíncrona!
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.