33.4 C
Cerro Grande do Sul
quarta-feira, novembro 27, 2024

O Google está finalmente ajudando os desenvolvedores a lutar contra os fabricantes de smartphones que quebram como os aplicativos Android funcionam

Nós dançamos em torno dele e afirmamos que ele é um problema menor a cada ano, mas o Android ainda tem problemas devido à fragmentação. Uma das maneiras mais irritantes de a fragmentação ainda se manifestar é quando os fabricantes de smartphones interferem na forma como os aplicativos funcionam e se comportam, quebrando comportamentos esperados ou ajustando como eles funcionam para aumentar a vida útil da bateria. Isso significa que, de telefone para telefone e de fabricante para fabricante, os aplicativos podem se comportar de maneira diferente do que os clientes esperam, oferecendo uma experiência inconsistente e um pesadelo de suporte ao desenvolvedor. Android é de código aberto, e qualquer pessoa pode alterar a forma como funciona para fazer o que quiser gostaria, mas o Google é implementando um novo conjunto de testes de compatibilidade enviados por desenvolvedores para garantir que os fabricantes de smartphones não  não quebrar comportamentos esperados ou adicionar limitações frustrantes. E, se der certo, os desenvolvedores ganharam&#; não precisa se preocupar tanto em fazer soluções alternativas para dispositivos específicos ou veja seus aplicativos simplesmente quebrarem sem nenhuma maneira de consertá-lo em outros. VÍDEO DA POLÍCIA ANDROID DO DIA Um problema de longa data será o primeiro exemplo De volta 560, fiz uma investigação sobre as práticas de gerenciamento de aplicativos em primeiro plano e antecedentes dos fabricantes de smartphones depois de receber anos de reclamações de desenvolvedores sobre como empresas de renome estavam ajustando comportamentos de uma forma que os criadores de aplicativos podiamt antecipar. Frustrações variaram de aplicativos que morrem mais rápido do que o esperado quando não estão visíveis, notificações atrasadas ou outros eventos de aplicativos, até não conseguir acordar na hora certa. Se você confia em seu smartphone para coisas como monitoramento de glicose ou administração de insulina, esses problemas são&#; é apenas frustrante , podem ser letais. Isso causava dores de cabeça no suporte ao cliente, pois os aplicativos geralmente quebravam de maneiras inesperadas quando usados ​​em diferentes dispositivos e exigia que os desenvolvedores criassem soluções personalizadas para skins de software de fabricantes de smartphones específicos (se soluções alternativas fossem possíveis) ou ignorassem os problemas completamente, deixando os clientes sem uma solução. window.arrayOfEmbeds = {‘youtube’ : ‘””‘}; Lá&#;uma música no final desta apresentação, pelo menos pule até o final e toque enquanto lê — ela&#; é meio engraçado. Alguns dos desenvolvedores afetados com quem falei na época me disseram que era um pesadelo. Eles não apenas tiveram que lidar com críticas irritadas de clientes que tinham &#; não fiz nada de errado, eles tiveram que solucione problemas individualmente e determine se e como os problemas podem ser corrigidos em uma base quase específica do dispositivo. Este� é uma quantidade incrível de trabalho que os fabricantes de smartphones empurraram para os desenvolvedores apenas para ganhar alguns minutos extras de vida útil da bateria. Embora as alterações feitas em telefones individuais e skins de software sejam culpadas aqui, o problema foi causado pelo Google&#; s falha em colocar o pé no chão e exigir que certos comportamentos no Android permaneçam inalterados. Para contexto: Android é de código aberto e qualquer pessoa pode alterá-lo ou usá-lo como bem entender. Mas se você quiser acessar a Play Store ou Google&#; s aplicativos, então há regras que você deve seguir . Mas mesmo quando o Google impõe certos padrões em seus vários documentos públicos e confidenciais, a empresa hesitou em intervir nessa situação específica. Isso abriu a porta para os fabricantes oferecerem potencialmente “melhorias” para o Android, mas o impacto real foi quase universalmente o oposto, com algumas empresas quebrando completamente como os aplicativos funcionavam, prejudicando o ecossistema Android, as expectativas dos desenvolvedores e as experiências dos clientes. Urbandroid, os desenvolvedores por trás do popular Sleep as Android app, mantinha uma lista de fabricantes e como os aplicativos executados neles foram afetados chamado Don&#;t Matar Meu Ap. Os desenvolvedores até criaram uma nova referência de comportamento do aplicativo para usarmos como parte de nossa investigação. window.arrayOfEmbeds[“com.urbandroid.dontkillmyapp&hl=en_US&gl=US”] = {‘play_store_app’ : ‘” n n n n n DontKillMyApp: Faça os aplicativos funcionaremn n Urbandroid (Petr Nue1levka)n FERRAMENTASn n n Preço: Gratuito n 4.6n n Downloadn n “‘}; De acordo com Petr Nalevka, um dos desenvolvedores da Urbandroid, Google&# ; os novos testes CTS-D podem ser a solução que procuramos ;está finalmente esperando, e o Google&#; vai deixar os próprios desenvolvedores colocou o pé no chão em seu nome. Suite de teste de compatibilidade com Android – agora aceitando envios de desenvolvedores O CTS-D é um novo “módulo” para o Android Compatibility Test Suite (CTS) que aproveitará os testes enviados pelo desenvolvedor (o -D no CTS-D). Isso significa que qualquer desenvolvedor que tenha problemas de compatibilidade em determinados dispositivos para seus aplicativos pode descobrir a natureza precisa do problema que eles &#; está tendo e encontra uma maneira de testar contra isso. Esse teste pode ser enviado de volta ao Google e potencialmente incluído no novo CTS-D. Isto pode ser enorme porque os dispositivos devem passar pelo Android CTS para obter o Google&#; aplicativos. Se um fabricante de smartphone quiser acessar a Play Store (e todos querem), eles precisam atender aos padrões mínimos que incluem o Compatibility Test Suite para garantir que os comportamentos esperados sejam mantidos. Se o CTS agora inclui testes enviados pelo desenvolvedor – e isso pode realmente ser um grande “se”, mais sobre isso em um segundo – isso significa que os fabricantes de dispositivos também terão que passar nesses testes enviados pelo desenvolvedor para obter acesso ao Google&#; Aplicativos e vitrine. De fato, o primeiro teste aceito no CTS-D foi submetido por Urbandroid s Nalevka para endereço a questão que nós&#; tenho relatado por anos, esperamos impedir que aplicativos sejam mortos por práticas de gerenciamento excessivamente agressivas. O primeiro teste CTS-D abordando o trabalho em segundo plano em aplicativos. Nalevka está em lágrimas, enviando diferentes testes ao CTS-D para formas de medir o problema de trabalho em segundo plano e trabalhando com os engenheiros do Google desde o ano passado da melhor maneira para realizar essas mudanças, quase como um teste em si de como o CTS-D funcionará. E o primeiro teste CTS-D, que parece ser baseado no teste Don t Kill My App Benchmark com uma métrica de pontuação semelhante, foi aceito. Esses testes enviados pelo desenvolvedor para o CTS estarão disponíveis como parte do Android&#; código-fonte aberto para escrutínio do desenvolvedor e do fabricante. Alguma ambiguidade e testes futuros Isso não&#; não significa que as coisas estão “consertados” ainda, e lá&# ; ainda há uma pequena ambiguidade potencial aqui. O Google confirmou para nós que o CTS-D é essencialmente uma extensão do CTS para incluir contribuições de desenvolvedores de terceiros, mas pelo menos um detalhe no anúncio faz parecer que ele pode não estar sujeito ao mesmo tipo de aplicação, com Google apenas alegando que é ” aconselhando fortemente os fabricantes a usarem o CTS-D para descobrir e mitigar problemas”, enfatizou minha. Quando se trata de Google&#; requisitos de teste em outros contextos, como o Documento de Definição de Compatibilidade do Android (CDD) , “recomendamos fortemente” ou “recomendamos fortemente” normalmente significa que algo está&#; na verdade não é um requisito, apenas um recomendação. Sabemos com certeza que o teste CTS é necessário para GMS licenciamento, mas não está claro se o Google criou algum tipo de exceção de área cinzenta para o CTS-D em comparação com o resto do CTS. A documentação do CTS-D em outros lugares afirma que as submissões aceitas de desenvolvedores são aceitas no próprio CTS, o que implica que não há distinção. Desenvolvedores que percebem que um dispositivo não &#; não passar em um teste CTS-D pode relatá-lo em um modelo de rastreador de problemas , e o Google trabalhará com seus parceiros (ou seja, os fabricantes de dispositivos) para resolvê-lo, mas&#; não está claro se o CTS-D tem “dentes” reais por trás dele, como o CTS faz. Nós� entrei em contato com o Google para confirmar como o CTS-D será aplicado e se os testes em será tratado de forma diferente do próprio CTS. “Quando cada smartphone trata os aplicativos de forma diferente, e alguns deles quebram como os aplicativos funcionam em um nível fundamental, isso&#;s Android&#; problema de fragmentação no seu pior.” O Google nos diz que o foco para novos testes agora é principalmente abordar os comportamentos de energia e bateria, mas parece que testes para mais tipos de problemas serão considerados em breve. Existem também algumas diretrizes bastante lógicas que os desenvolvedores devem seguir ao criar testes, e o Google ganhou&# ;t aceitar qualquer coisa. Primeiro, eles devem testar os comportamentos da API pública descritos na documentação do desenvolvedor Android. Em segundo lugar, eles devem ter requisitos incluídos no Documento de Definição de Compatibilidade do Android. Terceiro, eles não devem ser casos de teste duplicados já cobertos em outras partes do CTS. E mesmo que os testes atendam a esses requisitos, as submissões são apenas propostas sujeitas à análise da equipe do Android. Embora eles tenham interesses de desenvolvedor no coração, se um teste for contra seus planos para a plataforma ou puder ter outras consequências não intencionais, provavelmente vencerá&#; não faça o corte. O Google está finalmente consertando um enorme pesadelo para desenvolvedores Android? De volta 560, o Google disse em termos bastante brandos que, embora estivesse comprometido em corrigir o gerenciamento de aplicativos em segundo plano, a morte prematura do aplicativo, problemas de ativação e outros problemas causados pelo fabricante do smartphone “otimizações”, foi � na verdade, não vou fazer muito sobre isso diretamente. Enquanto a empresa reivindicasse iria parar fabricantes de isentarem suas alterações por meio de listas de permissões (como muitos fizeram, para manter certos aplicativos de mensagens funcionando melhor), tudo o que o Google impunha era uma exigência de que os clientes fossem informados se restrições de aplicativos mais agressivas estivessem sendo aplicadas automaticamente e que houvesse uma maneira de desativar deste comportamento. A (então nova) API de motivos de travamento também foi apresentada pelo Google como uma maneira de os desenvolvedores verem o que deu errado e medir se os dispositivos estavam tratando seus aplicativos de maneira inadequada de maneiras inesperadas, mas sabendo

por que um aplicativo morreu pode&#; não impede que o problema aconteça se ele&#; está fora dos desenvolvedores de aplicativos&#; mãos.

Eu não&#; não acho que o Google&#; a posição em relação a questão em 750 foi longe o suficiente, e eu francamente não t confie na empresa para impor o pouco que reivindicou faria fazer, uma vez que ignorou a lista de permissões baseada em aplicativos para trabalho em segundo plano que foi ostensivamente contra as regras por anos. Gerenciando um ecossistema que é tão abrangente quanto o Android exige um toque leve para garantir que você não #06; não desprivilegia novos casos de uso ou melhorias potenciais e avanço da plataforma, mas este era um problema sério que estava acontecendo prejudicar o ecossistema, alienando os desenvolvedores de que depende para ter sucesso e interferindo ativamente na forma como os clientes desejam usar seus aplicativos. Quando cada smartphone trata os aplicativos de maneira diferente, e alguns deles quebram como os aplicativos funcionam em um nível fundamental, isso&#; s Android&#; problema de fragmentação no seu pior. Isso exigiu uma mão mais firme para lidar com isso e, nos últimos dois anos, parece que o Google finalmente criou coragem. 2022 2022

Daniel Larusso
Daniel Larusso
Publicitário e jornalista. Graduado na Universidade Luterana do Brasil (ULBRA-RS)

RELACIONADAS