2013-10-16 2 views
0

Je suis en train d'essayer tous les moyens pour améliorer le temps de chargement d'un lien dans Android WebView en vain.J'utilise un lien qui a des images et du texte récupérées à partir du serveur externe en utilisant certains js Dans ce scénario, le code que j'ai utilisé est le suivant. Je ne suis pas intéressé par les techniques de mise en cache HTML ou de mise en cache du serveur, car le même lien se charge plus rapidement lorsque le navigateur ne parvient pas à faire la même chose. Webview android.Il n'y a pas beaucoup de script js je peux charger à partir de la ressource pour améliorer les performances d'où la plupart du script tire simplement des données à partir du serveur externe et des images à partir du serveur amazon.concert façons d'améliorer le temps de chargement dans Android WebView

WebSettings settings = getSettings(); 
    settings.setJavaScriptEnabled(true); 
    settings.setPluginState(PluginState.ON); 
    settings.setRenderPriority(WebSettings.RenderPriority.HIGH); 
    settings.setDomStorageEnabled(false); 
    settings.setLoadsImagesAutomatically(true); 
    settings.setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK); 
    settings.setJavaScriptEnabled(true); 
    settings.setAppCacheEnabled(false); 
    settings.setGeolocationEnabled(false); 

1 .Je suppose allumer DomStaorage et AppCache true avoir un impact sur le temps de chargement, donc je l'ai mis hors tension. 2.Dans OnDestroy, j'appelle clearcache sur le webview pour effacer le cache de l'application. Je fais cela donc je crains que la taille de mon application ne grandisse au fur et à mesure que webview db se développe si je ne parviens pas à effacer. cela doit, ou Android gère cela gracieusement.

3.Few suggestion que j'entends est de définir setCacheMode à LOAD_NO_CACHE et comment effacer le cache webview dans onDestroy. -> Est-ce que l'appel à webview.clearcache() a un impact donc je l'ai déjà configuré pour ne pas charger à partir du cache.

4.Le lien ne me donne pas d'information sur l'heure précédemment rafraîchie, dans ce cas quel mode de cache quelqu'un peut recommander.

5.S'il existe une méthode de test de concert pour déterminer le temps de chargement sur les périphériques qui prend en compte la connexion réseau et les retards de serveur.Par conséquent, la même page une fois chargée rapidement peut ralentir à un autre moment.

+0

Vous devez attendre que 500ms pour chaque lien html? –

+0

Je suppose, est-ce qu'il y a une meilleure façon de charger le lien plus rapidement? – ganesh

Répondre

0

Faites un essai avec "fast click".

Les navigateurs mobiles attendent environ 300 ms à partir du moment où vous appuyez sur le bouton pour déclencher l'événement click. La raison en est que le navigateur attend de voir si vous effectuez réellement un double tap.

Télécharger le script, ajoutez

<script type='application/javascript' src='fastclick.js'></script> 

dans votre tête et ce code dans votre script.

window.addEventListener('load', function() { 
    FastClick.attach(document.body); 
}, false); 

Plus d'informations: https://developers.google.com/mobile/articles/fast_buttons

+0

Cela ne fonctionne pas pour moi, quelqu'un peut-il me clarifier les 5 points que j'ai interrogés – ganesh

Questions connexes