Se você não conhece o Beagle ainda, recomendo entrar nesse artigo:

Evolução Server-Driven UI.

Por que o Beagle utiliza processador de anotação?

Para ajudar na configuração do SDK, com o processador de anotação é muito mais facil você registrar seus componentes customizados, ações, adapters, entre outras configurações do Beagle.

É possivel utilizar o beagle sem processador de anotação?

Sim, a biblioteca de processar as anotações é opcional.

Como faço então para utilizar o Beagle sem processador de anotação?

Quando você utiliza geração de código, o processador criava uma classe chamada BeagleSetup, agora vamos precisar criar essa classe manualmente.

Vou chamar ela de MyBeagleSetup, para fazer isso é muito simples basta criar um arquivo Kotlin com esse nome e colar o código abaixo.

Apos você colar o código acima no seu projeto vai notar que está faltando uma classe…


Vamos para o código

Abra a Classe MainActivity e você vai observar o seguinte código:

class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
findViewById<Button>(R.id.buttonBeagle).setOnClickListener startActivity(BeagleActivity.newIntent(this, null))
}
}

O código acima nos diz que ao clicar no botão vai abrir uma tela nova com o fluxo totalmente Server-Driven, para entender melhor sobre isso recomendo acessar esse link.

Componente Screen

O Beagle fornece vários componentes, dentre eles o Screen, o qual é muito útil para abrir uma tela totalmente guiada por Server-Driven.

class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
findViewById<ButtonAndroid>(R.id.buttonBeagle).setOnClickListener startActivity(BeagleActivity.newIntent(this, provideDetailScreen()))
}
private fun provideDetailScreen() =…


Se você não conhece o Beagle ainda, recomendo entrar nesse artigo:

Evolução Server-Driven UI.

Antes de começar:
Para criar um tela realmente Server Driven você precisaria configurar o seu backend, como o objetivo desse artigo é apenas demonstrar como funcionária a renderização dessa tela, vamos pular esse passo e ir direto para a aplicação.

Como posicionar componentes na tela:


First, before we start talking about a new way, we need to understand the concept.

What is Server-Driven UI:

Server-driven UI is when the API tells the client what components to render and with what content. This can be implemented in all three major platforms: Android, iOS, and the web.

The new way of doing this enter in this part, an open source library has finally come out that will help people apply this concept in a standardized way across platforms.

Some advantages that using the library your app will have:

Automatic releases without need to submit new version in store.
Change flow of screens…


Primeiro, antes de começarmos a falar sobre a evolução precisamos entender o conceito.

O que é Server-Driven UI?

É quando a API informa ao cliente quais componentes renderizar e com qual conteúdo. Isso pode ser implementado nas três principais plataformas: Android, iOS e Web.

E ai que entra a evolução, finalmente saiu uma biblioteca open source que vai ajudar a gente a aplicar esse conceito de uma forma padronizada entre as plataformas.

Algumas vantagens que utilizando essa biblioteca o seu app vai ter:

Releases automáticos e sem lojas

Acomode mudanças com facilidade

Construa apenas uma vez (Android, iOS e Web)

Minimiza repetições de código

Fácil…


Primeiro antes de começarmos a falar sobre a evolução precisamos entender o conceito.

O que é Server-Driven UI:

É quando a API informa ao cliente quais componentes renderizar e com qual conteúdo. Isso pode ser implementado nas três principais plataformas: Android, iOS e Web.

E ai que entra a evolução, finalmente saiu uma biblioteca open source que vai ajudar a gente a aplicar esse conceito de uma forma padronizada entre as plataformas.

Algumas vantagens que utilizando essa biblioteca o seu app vai ter:

Releases automáticos e sem lojas

Acomode mudanças com facilidade

Construa apenas uma vez (Android, iOS e Web)

Minimiza repetições de código

Fácil…


No primeiro artigo da serie, falamos sobre como padronizar os comportamos da sua tela em uma classe, Caso não tenha visto a primeira parte, abaixo você pode ir para o artigo anterior.

Parte 1

Máquina de Estado

Que tal criamos uma classe que passa a ter todos os estados da nossa tela e seja genérica ao ponto de qualquer ViewModel, possa usa-la.

Pensando nisso pensei em fazer uma Classe chamada ViewState, que contém todos os estados que podem ser apresentados para a tela

Como podemos ver a cima criei uma Selead Class que contem o estado de Carregando, Sucesso e Falha. …


Parte 1: Simplificando comportamentos do seu ViewModel


Normalmente um período de estagio tem em torno de 6 meses a 1 ano e esse tempo pode variar de acordo com o profissional e a empresa. Você pode ficar mais de 1 ano fazendo estagio como também pode ficar apenas entre 1 a 2 meses e a empresa já te oferecer uma proposta para ser contratado.

Vou compartilhar algumas dicas que pode te ajudar a acelerar esse processo.

Entender a missão, visão e valores da empresa e fazer parte deles.

Toda empresa tem sua missão, visão e valores, você sabe quais são da sua empresa? se não sabe você precisa perguntar isso para alguém que saiba(geralmente o líder ou chefe). Quando…

Uzias Ferreira

Android Developer

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store