la mémoire est une augmentation lorsque vous cliquez sur webview
-
22-12-2019 - |
Question
i Charger le site Web qui charge une page entière à l'aide de fichiers JavaScript vers webview.Chaque fois que je charge la page sur la vue Web, cela me montre qu'une mémoire augmentait dans
Réglage> Apps> Exécution
Même, lorsque je libère Webview, alors il ne libère pas la mémoire.
Je ne cache pas les ressources dans webview.Mais lorsque j'ai utilisé des instruments d'analyse de la mémoire, cela me montre des images d'images sont en cache en mémoire qui ne sont pas libérées. Mon code est ici pour Réf:
super.onCreate(savedInstanceState); setContentView(R.layout.webview); Intent in = getIntent(); String page_url = in.getStringExtra("link"); Log.i("display","url :"+page_url); if(deleteDatabase("webview.db") && deleteDatabase("webviewCache.db")){ Toast.makeText(this, "Delete Webvie data base successfully",Toast.LENGTH_SHORT).show(); } webview = (WebView) findViewById(R.id.webpage); webview.getSettings().setJavaScriptEnabled(true); webview.setWebViewClient(new WebViewClient()); webview.getSettings().setLoadWithOverviewMode(true); webview.getSettings().setAppCacheEnabled(false); webview.loadUrl(page_url); webview.clearHistory(); webview.clearFormData(); webview.clearCache(true);
Quelqu'un peut-il me guider s'il vous manque?Comment optimiser le chargement de la mémoire sur webview?
Merci d'avance.
La solution
webview est un widget UI complexe et consomme une mémoire significative tout en utilisant.Avant Andriod 4.4, l'API WEBVIEW.FREEMORY () peut aider, en fonction de ce qui utilise la mémoire dans les coulisses.
Certaines mémoire seront récupérées lorsque vous avez terminé avec le webview et invoquer Webview.destroy () et détachez-la de la hiérarchie de vue.
dans Android 4.4 La gestion de la mémoire est plus automatique à l'intérieur de la vision WebView et de la WEBVIEW tentera de libérer la mémoire lorsque le système est sous charge et déclenche Ontrimmemory ( http://developer.android.com/reference/andrroid/content/componentcallbacks2.html#ontrimmemory (int) ).