【问题标题】:Android: Using weak reference of activity/fragment instance instead of strong reference?Android:使用活动/片段实例的弱引用而不是强引用?
【发布时间】:2015-12-17 03:43:01
【问题描述】:

在我的 android 应用程序中,我有许多活动和片段,为了使代码具有可读性和可重用性,我为每个活动和片段都有帮助类。这些帮助类负责从填充动态视图到验证和网络相关任务的所有工作。

目前,我将 Activity/Fragment 的实例传递给每个帮助程序类。我的理解是,每个助手都在活动中实例化,并将与活动一起被销毁。

将弱引用传递给我的助手而不是强引用有什么优点/缺点?

【问题讨论】:

  • 你的助手类是活动/片段内部的吗?如果是这样,它们已经有一个隐式引用。
  • @iagreen 不,它们不是内部的。我有一个在我的应用程序中使用的 Helpers 层次结构。

标签: android


【解决方案1】:

只要帮助器的生命周期在 Activity 的生命周期内,就不需要使用 Wea​​kReference。如果 helper 的寿命比 Activity 长,那么您应该使用 Wea​​kReference 来避免在系统销毁 Activity 时将其保留在对象图中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多