Baixei e instalei a versão mais recente do sistema Android WebView na loja de aplicativos do meu tablet Android (executando 5.0.2).
Mas os aplicativos ainda continuam usando a versão antiga do webview (39.0.0.0).
Como posso fazê-los trocar?
Para informações, tentei desativar o antigo e ele é reativado quando abro um aplicativo que usa a visualização na web.
5.0-lollipop
browser
webview
Clémentine
fonte
fonte
Respostas:
Você não pode mudar isso sem raiz.
A estrutura do sistema é codificada para usar um pacote específico para aplicativos que solicitam um componente WebView. Por padrão (no AOSP), ele usa o valor
com.android.webview
, que é a versão compilada durante o processo de criação do AOSP. Em dispositivos de fabricantes que modificam esse componente, o nome do pacote pode ser diferente. Independentemente disso, para substituir o WebView fornecido com o dispositivo, você deve modificar esse valorcom.google.android.webview
.A maneira "manual" de fazer isso seria extrair o arquivo framework-res.apk do seu dispositivo, descompilá-lo e alterar o valor da
config_webViewPackageName
variável de recurso. Ele deve estar localizado/res/values/strings.xml
dentro do .apk. Depois de fazer isso, você precisará empacotar tudo e enviar o novo .apk ao seu dispositivo, substituindo o antigo.Um método alternativo que você pode tentar é instalar a estrutura do Xposed e usar o módulo WebViewGoogle . Se você usa uma ROM personalizada, também pode encontrar um pacote que modifique permanentemente os componentes da estrutura necessários (ou pode ser criado para usar o WebView do Google por padrão).
Minha hipótese seria que essa restrição existe em parte porque o sistema depende de uma implementação do WebView existente de alguma forma; portanto, se ela puder ser modificada por um usuário, poderá interromper o sistema de maneiras estranhas. Também haveria implicações de segurança para permitir que os aplicativos substituíssem o WebView do sistema, como um ator mau tentando fornecer um malicioso sem que o usuário saiba.
Como um ponto de explicação adicional: o motivo pelo qual o System WebView está disponível na Play Store é que os dispositivos Nexus (e possivelmente outros) são enviados com ele pré-instalado e configurado para usá-lo. Com efeito, é o WebView do sistema para esses dispositivos. Assim, o Google pode fornecer atualizações do WebView para esses dispositivos por meio da Play Store, para que os OTAs completos do sistema não sejam necessários apenas para atualizar o navegador / WebView. Existem outros componentes que o Google migrou para a Play Store, atualizando de maneira semelhante, com o raciocínio sendo essencialmente mais rápido. Telefone e contatos foram dois dos mais recentes, com o artigo vinculado fornecendo alguns detalhes adicionais sobre o motivo pelo qual o Google adotou essa abordagem.
fonte