我想从我的网站获取内容,并在列表视图和文本视图中显示这些内容。我使用jsoup库来解析HTML,但我的应用程序使用的是25 MB ram,你知道这对于一个应用来说非常多。
如何提高应用程序的ram效率?
答案 0 :(得分:3)
您可以使用webview显示它,而不是尝试解析它并将其转换为原生视图。
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//.. Other setup ...
//Add webview
WebView myWebView = (WebView) findViewById(R.id.webview);
myWebView.getSettings().setJavaScriptEnabled(true);
myWebView.addJavascriptInterface(new JSBridge(), "JSJavaBridge");
myWebView.loadUrl("http://my.testdomain.com/theSharedPage.html");
}
然后在JSBridge类中编写方法来处理JS和Java之间的任何交互。例如:
private class JSBridge
{
public playSound(){
mp = MediaPlayer.create(Test.this, R.raw.mysound);
mp.start();
}
}
然后在HTML中,使用JSBridge从Java播放声音。
<script type="text/javascript">
$(document).ready(function () {
$( '#playSound' ).click(function () {
if(typeof JSJavaBridge != 'undefined')
JSJavaBridge.playSound();
});
});
</script>