2013-07-29 63 views
1

我遇到此問題。 當我啓動並重新啓動我的應用程序5次時,內存泄漏。看起來phonegap和Cordova瀏覽器在內存中留下了一些對象。如何從內存中完全殺死和刪除android phonegap應用程序

07-28 03:48:01.886: E/dalvikvm(10729): Failed adding to JNI local ref table (has 512 entries) 
07-28 03:48:01.895: E/dalvikvm(10729): VM aborting 
07-28 03:48:01.895: A/libc(10729): Fatal signal 11 (SIGSEGV) at 0xdeadd00d (code=1) 
Fatal signal 11 (SIGSEGV) at 0xdeadd00d (code=1) 

一旦應用程序崩潰,我通常可以重新啓動應用程序,它可以用於其他5次。 那麼我通常如何殺死我的應用程序,以刪除內存中的所有JavaScript?

// about 116 script elements 
que.forEach(function (f, i) { 
    var s = d.createElement('script'); 
    s.async = false; 
    s.src = f; 
    s.onload = function() { 
     loaded++; 
     p = loaded/que.length; 
     //TODO: code for updating progress bar 
    }; 
    d.body.appendChild(s); 
    que[i] = s; 

}); 

這並沒有解決過這個問題:

for (var i = tags.length; i >= 0; i--){ //search backwards within nodelist for matching elements to remove 
      if (tags[i] && tags[i].getAttribute('src') != null) { 
        tags[i].parentNode.removeChild(tags[i]); //remove element by calling parentNode.removeChild() 
        for (var prop in tags[i]) { 
         delete tags[i][prop]; 
        } 
      } 
     } 
+0

我硝基甲苯知道如何在JavaScript代碼,但我也有同樣的問題,並解決了使用MAT和適當的生命週期爲Android。在調用destroy和將意圖標誌設置爲nohistory之前,將所有對象設置爲null。 – baloo

+0

代碼是cocos2d代碼..它動態加載116個Script標籤。我編輯了這個問題 –

+0

您對MAT的含義是什麼?我應該將哪些對象設置爲空。你能提供一些更多的解釋請 –

回答

0

調用此方法onCreate方法這個工作對我來說 - >

super.setBooleanProperty("keepRunning", false); 
相關問題