android – WebView中的视频 – ApplicationContext vs Activity Context

我在WebView中播放视频.

如果要避免内存泄漏,则必须使用ApplicationContext(与Activity上下文相对)来实例化WebView(refer to this)

如果我传入ApplicationContext并且WebView内部的VideoView需要创建一个对话框(通常是“无法播放此视频”),我会收到BadTokenException(refer to this)

我们是否期望在内存泄漏或潜在的ANR之间做出决定?

解决方法

我从上面的评论和进一步的测试中得出结论,问题是SDK中的一个错误:当通过XML布局创建WebView时,活动作为WebView的上下文传递,而不是应用程序上下文.完成活动后,WebView仍会保留对活动的引用,因此活动不会从内存中删除.我提交了一份错误报告,请参阅上面评论中的链接.
webView = new WebView(getApplicationContext());

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...