MutableContextWrapper 有多安全

How safe is MutableContextWrapper

Android 的 MutableContextWrapper 在内存泄漏等方面的使用安全性如何?我正在用 Activity 的上下文实例化 WebView,稍后想将其上下文更改为另一个 Activity

Here 是一个警告对 WebView 使用 MutableContextWrapper 的答案,因为它可能会导致混合上下文泄漏。但是我没有看到任何理由,因为当我们改变它的上下文时它怎么会导致泄漏? 为什么我们不应该在视图初始化后更改它的上下文?

有没有人用过并遇到过任何问题(特别是WebView)?使用过程中有什么注意事项吗?有这方面的资料分享吗?

绝对不安全。 Context 上的操作需要反操作才能释放资源,例如Context.registerComponentCallabacksContext.registerReceiver,如果同时更改了Context,则意味着不会为初始上下文调用反动作,从而导致资源泄漏。而WebView就用到了这些action,那是肯定的

请注意,WebView 是一个比常规 View 复杂得多的组件,因为它包含网络堆栈、渲染引擎等。