Hel*_*rld 1 android memory-leaks kotlin
如果我有像下面这样的其他类的持有上下文的伴随对象。
class Sample01Activity: BaseActivity() {
companion object {
fun open(context: Context) {
val intent = Intent(context, Sample02Activity::class.java)
ActivityCompat.startActivity(context, intent, null)
}
}
}
Run Code Online (Sandbox Code Playgroud)
open(context) 在这段代码中是否导致内存泄漏?并且 id 做到了,它会使用 Weakreference 进行修复,如下所示。
class SampleActivity: BaseActivity() {
companion object {
fun open(context: WeakReference(Context)) {
context.get()?.let {
val intent = Intent(it, Sample02Activity::class.java)
ActivityCompat.startActivity(it, intent, null)
}
}
}
Run Code Online (Sandbox Code Playgroud)
}
| 归档时间: |
|
| 查看次数: |
554 次 |
| 最近记录: |