Applications of Loaders

Due to its focused nature, applications of Loader are relatively easy to identify. The obvious applications include reading any kind of data from files or databases local to the device, as we've done in the examples in this chapter.

Of course there is no reason that the definition of "loading" should not encompass computing a value or set of values—in the download section of the Packt Publishing website you can find an example that uses Loader to calculate a set of prime numbers.

One strong advantage of Loaders over direct use of AsyncTask is that their lifecycle is very flexible with respect to the Activity and Fragment lifecycles. Without any extra effort we can handle configuration changes such as an orientation change. We can even start loading in one Activity, navigate through the app, and collect the result in a completely separate Activity, if that makes sense for our app.

This decoupling from the Activity lifecycle makes Loader in some ways a better candidate than AsyncTask to perform network transfers such as HTTP downloads; however, they require more code, and still aren't a perfect fit. We'll discuss more appropriate alternatives in Chapter 5, Queuing Work with IntentService and Chapter 6, Long-running Tasks with Service.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.145.163.242