A fragmentação está entre as maiores críticas feitas ao Android. Se por um lado essa característica populariza o sistema e permite que os usuários escolham entre inúmeros smartphones e tablets, por outro lado isso atrapalha os desenvolvedores e gera problemas de incompatibilidade com os aplicativos. A prova disso é uma foto da Animoca, uma empresa de Hong Kong que possui mais de 400 aparelhos diferentes só para testar seus aplicativos.

A Animoca desenvolve especialmente jogos para Android e é uma empresa bem sucedida – seus aplicativos já foram baixados mais de 70 milhões de vezes. Antes de lançar novos títulos, no entanto, é necessário assegurar que eles funcionarão corretamente nos smartphones e tablets dos usuários. E como fazer isso? Assim, ó:

Simples assim.

Na teoria é bem simples: basta utilizar um hardware padrão e assumir que todos os dispositivos com componentes semelhantes também rodarão os aplicativos. O problema é que não há nenhum padrão estabelecido para o hardware dos aparelhos – basicamente qualquer fabricante utiliza o processador que quiser, da marca que quiser, desde que ele consiga rodar o Android. Isso não acontece nos outros sistemas – no Windows Phone, a Microsoft exige que os aparelhos rodem séries específicas de processadores Snapdragon para manter a compatibilidade. E no iOS, o número de dispositivos é bem limitado, logo não há muitos problemas.

O CEO da Animoca, Yat Siu, revela que cerca de 600 dispositivos Android diferentes utilizam seus aplicativos, mas grande parte deles nem estão mais disponíveis para venda, o que acaba dificultando ainda mais os testes. Felizmente eles possuem investimentos da Intel e da IDG-Accel, o que permite a compra das centenas de smartphones e (obviamente) a contratação dos funcionários que testarão os aplicativos.

Eles não são os únicos; o cofundador da Pocket Gems, que lançou seu primeiro jogo exclusivo para Android nesta semana, tirou uma foto da coleção de smartphones e tablets da empresa. Bem mais modesto do que os 400 dispositivos da Animoca, mas ainda assim bastante assustador:

Nem são tantos assim, vai.

No próprio post do TechCrunch, Carmen Crincoli, que cuida dos produtos relacionados a nuvem na Microsoft, não economizou palavras num comentário para defender o árduo trabalho que a empresa de Redmond faz para manter o Windows funcionando nas inúmeras combinações de hardware dos PCs:

É por isso que eu digo às pessoas que nós (Microsoft) não somos elogiados o suficiente pelo nosso trabalho de compatibilidade do Windows. Você consegue imaginar como seria desenvolver softwares para PCs se a fabricante do seu sistema operacional não pudesse disponibilizar um conjunto de APIs e comportamentos que permitisse que você escrevesse seu código apenas uma vez e ele funcionasse em todos os lugares? Existem literalmente milhões de configurações únicas e você precisa fazer seus softwares funcionarem em todos eles. Existem problemas pontuais mesmo com o Windows, claro, mas este comentário é exatamente para explicar por que o Windows é um projeto tão grande. Todo esse trabalho é feito para evitar esse tipo de problema.

A tonelada de smartphones e tablets Android lançados todos os meses também contribui com a falta de atualizações, a estagnação das tecnologias utilizadas nos aplicativos e vários outros problemas que já foram extremamente discutidos em outras oportunidades. Eric Schmidt chama isso de diferenciação.

Comentários

Envie uma pergunta

Os mais notáveis

Comentários com a maior pontuação

Marcelo Ferreira
Errado. O conjunto de instruções do processador é fator determinante, independente da versão do Android. Mobiles com ARM6/ARM11 (os mais baratos) enfrentam problemas graves de compatibilidade. Veja o histórico de desenvolvimento do Firefox for Android: https://wiki.mozilla.org/Mobile/Platforms/Android#ARMv6_.28experimental.29
@xrenan
Opa... Diga-nos o valor...
@LBKatan
Ou o seu App é simples o suficiente pra rodar bem em quase qualquer aparelho. =)
RubensBrilhanteJr
Essa empresa recebe um investimento externo. Não lembro agora quem é o investidor. Por isso ela tem tantos aparelhos. Mas tem o caso da Netflix que usa 8 aparelhos com configurações diferentes nos testes do seu aplicativo pra Android. Eles tem mais aparelhos para testes, mas não precisam testar em todos a cada atualização. O que eu vejo é que cada empresa tenta entregar o aplicativo da melhor forma que pode. Alguns vão querer testar em centenas de dispositivos e outros em meia dúzia. Mas eu posso fazer um aplicativo e testar só no meu Android e colocar na PlayStore. Provavelmente será um app meia boca que não vai ficar bom em muitos aparelhos. A minha solução seria limitar os aparelhos que podem instalar meu app pelo manifest do meu projeto. É uma opção mas parece que ninguém lembra.
Ramon Melo
Então por que você está falando em 400 dispositivos? Vamos nos ater aos fatos, por favor. Eu nunca vi ninguém homologar em mais de 20 aparelhos. Só o que eu vi até agora foi uma empresa dizer que tem 400 aparelhos, e não que usa todos eles. E ainda me pareceu uma ação de marketing.
Gaba
Não. Mas com certeza é uma tarefa ruim e cansativa de se fazer.
@LBKatan
Além do mais, um aparelho lá deve estar bem mais barato que aqui ou nos EUA, não?
Ramon Melo
Você já teve que homologar em 400 dispositivos?
Ronaldo Gogoni
Se explica porque a empresa é asiática. E asiáticos são, em geral, extremamente perfeccionistas. A empresa faz isso para ter certeza de que o game vai rodar em qualquer modelo de Android que seja.
Gaba
Fala isso porque nunca teve que homologar em mais de 400 dispositivos. Isso não é um pequeno percalço :)
Patrik
Não é muto coerente não. Se estivéssemos falando de até 40 aparelhos eu concordaria, mas estamos falando de 400. O custo e tempo para testar em todos é muito elevado. Com isso o preço desses aplicativos será elevado e o lucro do desenvolvedor é menor. Se for verdade pode indicar um problema com a plataforma ou a metodologia de testes.
Ramon Melo
No pacote de "o que eu faço", estou incluindo a homologação, não é só o desenvolvimento. Desenvolvedor que é bom mesmo não se deixa abater por estes pequenos percalços no caminho.
@eriknm
This is Sparta.
Gabriel
Não há ausência de fragmentação em nenhuma plataforma móvel, mas há níveis bem diferentes. Se você acha normal o Atrix não ser atualizado para o Android 4.0 e o SII receber o ICS 6 meses depois do lançamento, realmente as plataformas móveis são todas iguais nesse aspecto. "Se não quer fazer isso muda de profissão e vai vender pastel na feira. Sempre foi assim até para software de servidores e PC." É igualzinho mesmo, aqui na empresa temos 1500 servidores para testar o sistema: (Versões Linux)*(Versões do Oracle)*(Versões do Servidor de aplicação)*(Marca do processador).
Thiago
Android é uma bagunça. Falta pouco.
Exibir mais comentários