diff options
Diffstat (limited to 'docs/html/training/load-data-background/index.jd')
| -rw-r--r-- | docs/html/training/load-data-background/index.jd | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/docs/html/training/load-data-background/index.jd b/docs/html/training/load-data-background/index.jd new file mode 100644 index 0000000..dc9d84a --- /dev/null +++ b/docs/html/training/load-data-background/index.jd @@ -0,0 +1,77 @@ +page.title=Loading Data in the Background +trainingnavtop=true +startpage=true + +@jd:body +<div id="tb-wrapper"> +<div id="tb"> + +<!-- Required platform, tools, add-ons, devices, knowledge, etc. --> +<h2>Dependencies and prerequisites</h2> +<ul> + <li> + Android 1.6 or later + </li> +</ul> + +<!-- related docs (NOT javadocs) --> +<h2>You should also read</h2> +<ul> + <li> + <a href="{@docRoot}guide/components/loaders.html">Loaders</a> + </li> + <li> + <a href="{@docRoot}guide/topics/data/data-storage.html#db">Using Databases</a> + </li> + <li> +<a href="{@docRoot}guide/topics/providers/content-provider-basics.html">Content Provider Basics</a> + </li> +</ul> + +<h2>Try it out</h2> +<div class="download-box"> + <a href="{@docRoot}shareables/training/ThreadSample.zip" class="button">Download the sample</a> + <p class="filename">ThreadSample.zip</p> +</div> + +</div> +</div> +<p> + Querying a {@link android.content.ContentProvider} for data you want to display takes time. + If you run the query directly from an {@link android.app.Activity}, it may get blocked and + cause the system to issue an "Application Not Responding" message. Even if it doesn't, users + will see an annoying delay in the UI. To avoid these problems, you should initiate a query on a + separate thread, wait for it to finish, and then display the results. +</p> +<p> + You can do this in a straightforward way by using an object that runs a query asynchronously in + the background and reconnects to your {@link android.app.Activity} when it's finished. This + object is a {@link android.support.v4.content.CursorLoader}. Besides doing the initial + background query, a {@link android.support.v4.content.CursorLoader} automatically re-runs the + query when data associated with the query changes. +</p> +<p> + This class describes how to use a {@link android.support.v4.content.CursorLoader} to run a + background query. Examples in this class use the {@link android.support.v4 v4 support library} + versions of classes, which support platforms starting with Android 1.6. +</p> +<h2>Lessons</h2> +<dl> + <dt> + <strong><a href="setup-loader.html">Running a Query with a CursorLoader</a></strong> + </dt> + <dd> + Learn how to run a query in the background, using a + {@link android.support.v4.content.CursorLoader}. + </dd> + <dt> + <strong> + <a href="handle-results.html">Handling the Results</a> + </strong> + </dt> + <dd> + Learn how to handle the {@link android.database.Cursor} returned from the query, and how + to remove references to the current {@link android.database.Cursor} when the loader + framework re-sets the {@link android.support.v4.content.CursorLoader}. + </dd> +</dl> |
