O VLC é um player multimídia sem custo financeiro de código aberto disponível em várias plataformas, desenvolvido pelo projeto VideoLAN (links em inglês). A compatibilidade integrada com todos os arquivos e telas é a essência do design do VLC. O VLC consegue reproduzir a maioria dos arquivos de vídeo e áudio locais, além de vários protocolos de streaming e muitos apps de terceiros que usam o mecanismo do VLC para a reprodução de vídeos. O objetivo dos desenvolvedores do VideoLAN é que os usuários possam assistir qualquer vídeo, em qualquer lugar, independentemente do dispositivo ou do tamanho de tela que escolherem.
Inicialmente, a equipe projetou o app VLC para Android, e não demorou muito para os usuários começarem a solicitar a mesma experiência em Chromebooks. Foi quando o VideoLAN viu uma oportunidade de oferecer aos usuários uma experiência no estilo desktop trazendo o VLC para o ChromeOS.
Ao otimizar o app Android para o ChromeOS e telas maiores, além de oferecer suporte ao ARM x86 e de 64 bits desde o início, o VideoLAN garantiu que os usuários do VLC pudessem aproveitar a mesma experiência imersiva em vários dispositivos e formatos diferentes.
O que a equipe fez
A equipe começou observando quais recursos do VLC para computador eram os preferidos dos usuários, como entrada de mouse, menu de clique com o botão direito e garantir que o armazenamento externo (discos rígidos e pen drives USB) funcionem corretamente. Depois disso, passou a ajustar o layout e a funcionalidade do app para garantir que os usuários pudessem aproveitar os mesmos recursos, em um ambiente semelhante ao de um computador.
Compatibilidade com teclado e mouse
Uma das otimizações mais importantes da equipe foi oferecer compatibilidade com a entrada de teclado e mouse. A compatibilidade com teclados possibilitou o uso de atalhos e teclas de direção para navegar facilmente pelo app e a entrada de mouse permitiu ativar os comandos do botão direito e o recurso de arrastar e soltar arquivos no VLC.
Redimensionamento dinâmico
O VideoLAN projetou várias versões do layout para permitir que os usuários conseguissem redimensionar o app facilmente. Como a equipe já havia projetado o layout do VLC para tablets, acomodar layouts maiores e mais amplos foi um processo bastante simples. Eles também aprimoraram as configurações de áudio do player para aproveitar o espaço extra disponível em telas maiores.
Anteriormente, a equipe precisava usar emuladores individuais ou dispositivos separados para testar cada layout. No entanto, com o suporte do Android ao ChromeOS, a equipe conseguiu testar o layout da IU para computadores, tablets e dispositivos móveis de uma só vez, no mesmo dispositivo, e sem precisar usar um emulador. Isso acelerou consideravelmente o tempo de design e teste.
Agora, com o Linux (Beta) no ChromeOS, os desenvolvedores podem usar o Android Studio para criar e testar apps Android de maneira nativa, tornando Chromebooks prontos para desenvolvimento.
Como programar código em Kotlin
O melhor de tudo é que a equipe fez todo o trabalho em Kotlin, uma linguagem de programação poderosa, que ajudou a aumentar a produtividade ao programar um código mais seguro e conciso. Ao reduzir a base do código do app, a equipe conseguir passar menos tempo solucionando problemas e mais tempo otimizando o layout e a funcionalidade do app.
"Geralmente, ficamos relutantes em reestruturar ou reescrever nosso código, porque corremos o risco de perder a funcionalidade", afirmou Geoffrey Métis, desenvolvedor chefe do Android no VideoLAN. "Ficamos felizes de descobrir que a transição de Java para Kotlin é muito tranquila, graças à ferramenta de migração integrada do Android Studio. Além disso, o framework de corrotinas do Kotlin nos ajudou a melhorar o desempenho".
Resultados
O VideoLAN usou o mesmo APK para dispositivos móveis, ChromeOS e Android TV, então o desenvolvedor líder levou apenas dois meses para otimizar o app para cada plataforma. Os usuários vinham pedindo suporte ao VLC no ChromeOS há meses, especialmente para reprodução de DVD, e a equipe recebeu um feedback extremamente positivo até agora. Além disso, a versão mais recente do ChromeOS tem suporte total ao armazenamento externo, de modo que todos os usuários do Android agora têm o mesmo benefício.
"Nossa equipe está sempre à procura de novas oportunidades para proporcionar o melhor resultado para nossos usuários", afirmou o presidente do VideoLAN, Jean-Baptiste Kempf. "A otimização para Chromebooks nos ajudou a fazer com que nosso app alcance muitos dispositivos e formatos, e ficou claro que atingimos nosso objetivo pelo feedback dos usuários no mundo todo".
Começar
Confira algumas práticas recomendadas para otimizar seus apps para o ChromeOS.