Testadores do Android N: veja por que seus aplicativos raiz continuam falhando

Você adora viver no que há de mais moderno, então embarcou e instalou as novas versões de visualização do Android N do Google. Se você estiver executando o software como seu driver diário (talvez você goste de coisas travando e queimando, quem sabe?), provavelmente notou que muitos de seus aplicativos favoritos simplesmente não funcionam. Você atualizou o SuperSU beta do Chainfire para Android N para aliviar um pouco a miséria com um melhor controle do sistema, mas muitos aplicativos root também quebram. Por que? E como eles podem ser consertados? De acordo com Chainfire, a razão é porque o Google está se afastando de Caixa de ferramentas em direção a caixa de brinquedo (e tem sido assim desde o Android Marshmallow) e tem agora removido montagem de caixa de ferramentas apoiar. Se você já teve problemas com aplicativos root no passado, provavelmente já viu a palavra ‘caixa de ferramentas’ antes. Caso ainda não tenha feito isso, deixarei Chainfire explicar o que é:

As três caixas no Android são toolbox, busybox e toybox. Essas caixas fornecem implementações para vários comandos básicos do Unix - semelhantes aos que o GNU Core Utils fornece em várias distribuições Linux.

Caixa de ferramentas era até recentemente a implementação padrão do Android. caixa ocupada é praticamente a caixa padrão fora do Android, licenciada pela GPL e foi portada para o Android por muitos. caixa de brinquedo é uma alternativa licenciada por BSD para caixa ocupada criado por um ex- caixa ocupada mantenedor. caixa de brinquedo apareceu pela primeira vez no Android em M e está substituindo lentamente o Caixa de ferramentas implementação para vários comandos.

Esses comandos são usados ​​​​principalmente por aplicativos raiz, scripts de dispositivos e usuários de emulador de shell/terminal adb.

Quanto ao motivo pelo qual você provavelmente já se deparou com problemas decorrentes da caixa de ferramentas ou da caixa ocupada antes, de acordo com Chainfire:

Muitos aplicativos root precisam executar comandos fornecidos por essas caixas. Embora o comando base seja geralmente o mesmo, os parâmetros aceitos, o funcionamento exato e a saída serão diferentes entre as implementações e as diferentes versões dessas implementações.

Basicamente, como alguns de seus aplicativos raiz exigem um comando específico que pode ser encontrado em uma caixa, mas outro aplicativo pode exigir outro comando específico encontrado em outra caixa, muitos usuários tiveram problemas para fazer com que certos aplicativos raiz funcionassem corretamente porque a implementação de sua caixa não tem todos os direitos comandos. Isso causa dor de cabeça para desenvolvedores como Chainfire, que precisam lidar com usuários que se perguntam por que seu aplicativo não funciona. A maioria dos usuários provavelmente tem uma implementação de bcaixa de uso instalado, mas os desenvolvedores podem ligar Caixa de ferramentas diretamente, em vez de esperar que sua instalação tenha os comandos adequados com os parâmetros adequados necessários para o funcionamento do aplicativo raiz. No entanto, essa solução alternativa está quebrada no Android N. Por Chainfire:

Infelizmente, no N Preview, montagem de caixa de brinquedos substituiu montagem de caixa de ferramentas como a implementação padrão e, pior ainda, montagem de caixa de ferramentas foi removido, então você não pode voltar a ele. Enquanto montagem de caixa de brinquedos parece ter se livrado de sua saga de falhas de segurança, mas ainda não funciona muito bem. Não tão bem quanto o Caixa de ferramentas implementação que substituiu, pelo menos.

É por isso que seus aplicativos raiz no Android N estão falhando. Chainfire tentou consertar parcialmente alguns dos aplicativos quebrados que usam formas populares do comando mount aplicando uma correção no SuperSU 2.70, no entanto, nem todos os aplicativos serão corrigidos. Se você for um usuário final, não há nada que possa fazer a respeito até que o desenvolvedor do seu aplicativo favorito envie uma atualização. Se você é um desenvolvedor e está se perguntando por que os usuários do Android N estão tendo problemas, você deveria ler o post completo de Chainfire para ter uma ideia de como consertar seu aplicativo.


Você teve algum aplicativo root falhando no Android N? Avise a todos nos comentários abaixo (e principalmente tente entrar em contato com o desenvolvedor)!