Dentro do universo de pacotes e plugins disponíveis para Flutter, existe um ou mais de um que atendem aos desenvolvedores no momento da implementação de alguma funcionalidade em um aplicativo. Um exemplo desses pacotes é o Dio, o qual já apresentei em um post aqui do blog. Esses pacotes podem ser encontrados, em sua maioria, no pub.dev. Caso o autor não tenha cadastrado seu pacote no pub.dev, a alternativa é procurar diretamente o GitHub.
No pub.dev existe uma lista dos “pacotes favoritos” (Flutter Favorites Program). Essa lista possui os pacotes e plugins que os desenvolvedores devem considerar quando estiverem construindo seu aplicativo. Ela segue um conjunto de métricas e é definida por um comitê composto por membros da comunidade Flutter.
Sabendo disso, resolvi fazer minha própria lista de plugins e pacotes (Pra tentar me sentir importante kkkk) e pontuar alguns dos que eu considero mais úteis. Os pacotes que estão na minha lista podem fazer parte ou não da lista “oficial”. Vamos a eles:
- url_launcher: Um plugin do Flutter para abrir uma URL no dispositivo móvel. Funciona para iOS e Android.
- font_awesome_flutter: Este plugin disponibiliza o pacote de ícones Font Awesome para ser utilizado em apps baseados em Flutter.
- admob_flutter: Pacote não oficial que implementa o Admob para Flutter.
- flutter_launcher_icons: Pacote que simplifica a geração do ícone principal do seu aplicativo. Através de comandos no terminal é possível gerar o ícone a partir de uma imagem tanto para a versão Android do app quanto para iOS.
- connectivity: Plugin Flutter para descobrir o estado da conectividade de rede (WiFi/3G) no Android e iOS.
- share: Plugin Flutter para compartilhar conteúdo do aplicativo por meio do Dialog de compartilhamento da plataforma (iOS e Android).
- rate_my_app: Este plugin permite a criação de um Dialog que sugere aos usuários a classificação (Play Store e Apple Store) do seu aplicativo. A exibição desse Dialog é parametrizável.
- dio: Cliente HTTP para Dart, que suporta interceptores, download de arquivo, timeout, entre outras funcões.
- permission_handler: Este plugin fornece uma implementação para solicitar e verificar permissões tanto no iOS quanto no Android.
- bloc/provider/mobx: Esses três plugins tem por objetivo realizar o gerenciamento de estado dentro do app em Flutter. Cada um possui seus pontos positivos e negativos. Além disso, no quesito “gerenciamento de estado”, não existe unamidade na comunidade Flutter. Por isso, resolvi listar os três e deixar que cada leitor tome a sua decisão.
Bom, é isso.
Espero que algum dos pacotes da minha lista seja útil nos seus futuros projetos de apps. Caso conheça algum pacote/plugin que não faz parte da lista, fique à vontade para citá-lo nos comentários. =]
Desejo um Feliz Ano Novo! Que venha 2020! =]