Non-UI Fragment vs Singleton
Asked Answered
B

1

9

I guess that the main purpose of the non-UI fragments is the storage of data that is retained over configuration changes, right? So, appart from being this storage specific for the Activity that owns this fragment, which is the benefit of its usage over a Singleton pattern across the entire application (which is the solution I've been doing so far)?

Befoul answered 20/7, 2012 at 10:0 Comment(0)
C
16

The fact that a fragment is scoped to its activity means there is less chance of a long-term memory leak, as opposed to singletons -- the fragment should eventually get garbage-collected, while the singleton will not.

You also have somewhat more control over timing. The Application is created just after any ContentProviders in your app, and you have no choice on that. Conversely, you control when fragments get created, and therefore may be able to take advantage of that control.

So, for places where the data is really only needed by an activity, a non-UI fragment is probably a better idea than a singleton. The singleton would be for places where the data is needed across multiple components.

Catlett answered 20/7, 2012 at 11:15 Comment(2)
Thanks for your response. That's what I supposed. I'll stick with the singleton for Application storage and implement non-UI fragments for Activity-scope data.Malcommalcontent
This explains my hour long thinking on why headless fragment and not singleton.Arlenaarlene

© 2022 - 2024 — McMap. All rights reserved.