Matheus deu duas dicas que podem ser úteis. Eis uma dica para display e outra para solucionar o pesadelo da câmera:
Antes de publicar na Play Store, é legal checar em vários dispositivos diferentes (mesmo que no emulador) se todo seu layout cabe na tela do dispositivo e se a aparência está como deveria. É legal lembrar a importância de usar dp e sp em vez das medidas padrões de pixels (dp e sp são traduzidas para seu valor em pixels de acordo com a densidade da tela do dispositivo). Só isso, porém, não é suficiente. Às vezes é necessário adaptar um pouco ali e aqui pra chegar na aparência esperada e os designers ficarem felizes.
Sobre a câmera, as diferenças entre APIs de dispositivos são contornadas com API de terceiros, como esta. “Hoje, manter seu app compatível têm sido mais fácil já que o Google está começando a lançar coisas novas e incorporá-las em versões mais antigas do sistema”, disse.
Agora você deve estar pensando: nossa, que ruim desenvolver para Android. Vou só focar no iPhone, que não tem esses problemas. Não é bem assim…
Apesar de ter dispositivos unificados, com poucos tamanhos de tela, os desenvolvedores para iOS também têm desafios na hora de desenhar e adaptar os aplicativos. Aproveitando o gancho da iOasys, falei com João Pedro Melo, o desenvolvedor de iOS da empresa, que me contou que o maior vilão se chama iPhone 4s. E também é por conta do hardware.
No lançamento, o iPhone 4s ainda tinha 512 MB de RAM, metade do seu sucessor, o iPhone 5, que tem 1 GB. “É bem comum você fazer um app que está funcionando muito bem no iPhone 5 (que já está começando a mostrar os sinais da idade) mas quando chega no 4s tudo começa a dar errado. Isso fica mais visível quando você lida com coisas que podem consumir muita memória, como fotos. Já presenciei casos de que simplesmente abrir a câmera num app, no 4s, fazia ele dar crash por falta de memória“, explica João.
A proporção da tela também torna o 4s meio odiado pelos desenvolvedores, já que o suporte é praticamente obrigatório por ele ser bem popular no Brasil. Todos os iPhones depois dele, 5, 5s, 6 e 6s, têm proporção 16:9. “Muitas vezes na verdade não é preciso fazer nada, você faz o app pensando num iPhone 5 e ele “magicamente” funciona até no 6 Plus sem nenhum problema de layout”, diz o desenvolvedor.
“Já o 4s é diferente, pois ele tem menos espaço vertical. Muitas vezes, isso te obriga a pensar em layouts levemente diferentes especialmente para o 4s. Felizmente, ele está quase no final da sua vida, tanto que não vai receber o iOS 10. No entanto, a Apple recomenda que seu aplicativo tenha suporte a pelo menos à versão atual e anterior do iOS, então os desafios com ele ainda vão continuar por algum tempo”, completa.
Outro ponto, segundo João, é suportar versões anteriores do iOS. Em uma versão nova do sistema, recursos interessantes não aparecem só para os usuários: eles também facilitam a vida do desenvolvedor. Mas a adoção pelo usuário normalmente é baixa porque nem todo mundo atualiza para a nova versão.