WebView di debug remoto

Esegui il debug dei componenti WebView nelle tue app Android native utilizzando gli Strumenti per sviluppatori di Chrome.

Su Android 4.4 (Lollipop) o versioni successive, utilizza DevTools per eseguire il debug dei contenuti WebView nelle applicazioni Android native.

Riepilogo

  • Attiva il debug di WebView nella tua app Android nativa; esegui il debug di WebView in Chrome DevTools.
  • Accedi all'elenco dei componenti WebView abilitati per il debug tramite chrome://inspect.
  • Eseguire il debug dei componenti WebView è come eseguire il debug di una pagina web tramite il debug remoto.

Configura WebView per il debug

Il debug di WebView deve essere attivato dall'applicazione. Per attivare il debug di WebView, chiama il metodo statico setWebContentsDebuggingEnabled nella classe WebView.

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
    WebView.setWebContentsDebuggingEnabled(true);
}

Questa impostazione si applica a tutti i componenti WebView dell'applicazione.

Suggerimento: il debug di WebView non è influenzato dallo stato del flag debuggable nel file manifest dell'applicazione. Se vuoi attivare il debug di WebView solo quando debuggable è true, testa il flag in fase di runtime.

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
    if (0 != (getApplicationInfo().flags & ApplicationInfo.FLAG_DEBUGGABLE))
    { WebView.setWebContentsDebuggingEnabled(true); }
}

Apri un componente WebView in DevTools

Nella pagina chrome://inspect viene visualizzato un elenco di componenti WebView compatibili con il debug presenti sul dispositivo.

Per avviare il debug, fai clic su inspect sotto la WebView di cui vuoi eseguire il debug. Utilizza DevTools come faresti per una scheda del browser remoto.

Ispezione degli elementi in un componente WebView

Gli elementi grafici in grigio elencati con il componente WebView rappresentano le dimensioni e la posizione rispetto allo schermo del dispositivo. Se nei componenti WebView sono impostati dei titoli, vengono elencati anche i titoli.

Risolvere i problemi

Non riesci a vedere i componenti WebView nella pagina chrome://inspect?

  • Verifica che il debug di WebView sia attivo per la tua app.
  • Sul dispositivo, apri l'app con il componente WebView di cui vuoi eseguire il debug. Quindi, aggiorna la pagina chrome://inspect.