Il Forum è consultabile solo in modalità lettura. Per domande o consigli iscriviti al nostro GRUPPO FACEBOOK / COMMUNITY cliccando qui

Aiuto webview

Discussione in 'Development' iniziata da nicolachiari, 22 Ott 2015.

Condividi questa Pagina

  1. nicolachiari

    nicolachiari Worker Droid

    Iscritto:
    13 Ott 2015
    Messaggi:
    150
    "Mi Piace":
    8
    Ciao a tutti!!! Volevo chiedervi una cosa....
    Se io creo una web view nella mia app quando apro l'app si apre anche il sito... E fino a qua OK.... Pero se clicco sulla pagina mi reindirizzare nel browser.... C'è un modo per navigare nel sito senza aprire il browser? Per fare tutto nell'app!!
    Grazie!!
     
  2. 144556

    144556 Silver Droid

    Iscritto:
    18 Apr 2014
    Messaggi:
    2.326
    "Mi Piace":
    1.010
    Si usando chromium dovresti poterlo fare
     
  3. nicolachiari

    nicolachiari Worker Droid

    Iscritto:
    13 Ott 2015
    Messaggi:
    150
    "Mi Piace":
    8
    scusa la mia ignoranza... cosa è chromium?
     
  4. Omar

    Omar Guest

  5. Crotan

    Crotan Worker Droid

    Iscritto:
    1 Set 2013
    Messaggi:
    81
    "Mi Piace":
    56
    Ho l'impressione che gli utenti che hanno risposto prima di me non hanno capito la richiesta di nicolachiari. Per fare quello che chiedi, ovvero navigare all'interno della WebView senza far aprire il browser, ti basta inserire il codice che trovi di seguito prima di caricare l'URL attraverso il metodo loadUrl().

    Codice:
    webView.setWebViewClient(new WebClient());
    E nella stessa classe dichiari una inner-class che estende WebViewClient e fai l'override del metodo shouldOverrideUrlLoading() entro il quale richiamerai il metodo loadUrl().

    Codice:
    private class WebClient extends WebViewClient {
           @Override
            public boolean shouldOverrideUrlLoading(WebView view, String url) {
                view.loadUrl(url);
                return true;
            }
    }
    
     
    Ultima modifica di un moderatore: 23 Gen 2016
  6. nicolachiari

    nicolachiari Worker Droid

    Iscritto:
    13 Ott 2015
    Messaggi:
    150
    "Mi Piace":
    8
    grazie provoooo!!!!
     
    A Crotan piace questo elemento.
  7. nicolachiari

    nicolachiari Worker Droid

    Iscritto:
    13 Ott 2015
    Messaggi:
    150
    "Mi Piace":
    8
    ciao!! c'è un modo per far ricaricare l'ultimo url che c'era nella webview quando si esce e si rientra nell'app?
     
  8. Mikhael

    Mikhael Administrator

    Iscritto:
    23 Gen 2009
    Messaggi:
    6.450
    "Mi Piace":
    2.707
    Ciao @nicolachiari, beh ti basta mettere l'istruzione di loadurl nell'OnResume dell'activity, ogni volta che riapri l'app ricarica l'url indicato.
     
    A nicolachiari piace questo elemento.
  9. nicolachiari

    nicolachiari Worker Droid

    Iscritto:
    13 Ott 2015
    Messaggi:
    150
    "Mi Piace":
    8
    Ma cosi non ai carica sempre lo stesso URL? Quello predefinito! Io vorrei far caricare l'ultimo... Ad esempio l'URL predefinito è google.com poi cerco tutto android e vorrei che mi rimanesse sulla pagina di tutto android!
    Grazie per la risposta!
     
  10. Mikhael

    Mikhael Administrator

    Iscritto:
    23 Gen 2009
    Messaggi:
    6.450
    "Mi Piace":
    2.707
    Ah ok. Tendenzialmente quando torni sull'app la webview dovrebbe rimanere su quella pagina. Puoi comunque volendo intercettare il cambio di pagina e salvarlo in una preferenza estraendo l'url attuale con
    Codice:
    String webUrl = webView.getUrl();
    
    Dovresti poter intercettare il cambio pagina estendendo le funzionalità del webviewclient e usando la funzione
    Codice:
    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
    
    Salvandolo in una preferences poi lo recuperi quando l'app viene riaperta. Quindi se valorizzato carica quello altrimenti carica google
     
  11. Mikhael

    Mikhael Administrator

    Iscritto:
    23 Gen 2009
    Messaggi:
    6.450
    "Mi Piace":
    2.707
    Mi correggo, con shouldOverrideUrlLoading non ti serve recuperare l'url con la funzione di prima, perché l'url lo hai già come variabile della funzione: url
     
    A nicolachiari piace questo elemento.
  12. nicolachiari

    nicolachiari Worker Droid

    Iscritto:
    13 Ott 2015
    Messaggi:
    150
    "Mi Piace":
    8
    io avevo provato con shared preference ... salvano weburl come stringa... e poi facendolo ricaricare... però non ero riuscito...
     
  13. nicolachiari

    nicolachiari Worker Droid

    Iscritto:
    13 Ott 2015
    Messaggi:
    150
    "Mi Piace":
    8
    quello che avevo fatto era questo...
    Codice:
    String webUrl = webView_video1.getUrl();
    
    
    
            SharedPreferences prefs1 = getSharedPreferences("aa", MODE_PRIVATE);
            SharedPreferences.Editor editor = prefs1.edit();
    
            editor.putString("string1", webUrl);
            editor.apply(); // This line is IMPORTANT. If you miss this one its not gonna work!
    
            SharedPreferences sharedPrefs = getSharedPreferences("aa", MODE_PRIVATE);
    
            String string = sharedPrefs.getString("string1",
                    webUrl);
    
            webView_video1.loadUrl(string);