2013-12-13 102 views
0

我需要顯示四個實時平滑圖表,代表我的android應用程序中的用戶biodata。我試過每個免費的Android庫,但他們不像他們的JavaScript對應。所以我決定在webview中使用highcharts js。android webview中無響應的觸摸

同一屏幕上的四個圖表可以正常工作。但是webview不能快速識別觸摸事件。我嘗試玩H/W加速,觸摸事件等,但它沒有幫助。

每當我觸及到的WebView logcat的一個按鈕,說: -

"12-13 16:13:37.436: V/WebViewInputDispatcher(9308): blockWebkitDraw" 
"12-13 16:13:37.441: V/WebViewInputDispatcher(9308): blockWebkitDraw lockedfalse" 

觸摸按鈕多次後,它說: -

"12-13 16:13:37.806: V/WebViewInputDispatcher(9308): blockWebkitDraw lockedtrue" 

所以基本上任何關於highcharts圖形觸摸或按鈕呢不工作很快。我從資源文件夾加載html/js/css。

我需要在webview中執行哪些修復來解決此問題?我認爲我的html/js/css代碼沒有任何問題,因爲它在Chrome移動版上運行得非常好。

+0

您是否嘗試過使用PhoneGap的? –

+0

我的大部分應用程序都是使用Android Java SDK開發的,因此切換到phonegap是不可能的。 – techgyani

回答

0

讓您的應用程序有一個重要的延遲是一個可能的指示器,可能是您在UIThread中做了一些艱苦的工作,您應該在線程或AsyncTask中加以說明。

你沒有提到當你觸摸圖表時會發生什麼,但是一些代碼可能會澄清這一點。

我強烈建議安裝Eclipse內存分析工具(假設您使用Eclipse,否則您應該爲您使用的環境找到類似的工具),並將其與DDMS結合使用。這會給你一些瓶頸可能發生的線索。

這是一個關於如何使用它們的一個很好的教程:http://therockncoder.blogspot.com.es/2012/09/fixing-android-memory-leak.html

這一個非常澄清過:http://eclipsesource.com/blogs/2013/01/21/10-tips-for-using-the-eclipse-memory-analyzer/