Hi Dianne, Thank you for the reply.
In this example I'm not sure what the baseUri should be : Uri baseUri; if (mCurFilter != null) { baseUri = Uri.withAppendedPath(Contacts.CONTENT_FILTER_URI, Uri.encode(mCurFilter)); } else { baseUri = Contacts.CONTENT_URI; } I have a SQLiteDatabase which I get usually access via a SQLiteOpenHelper. All the Loader examples I see refer to data stored as a ContentProvider. Regards, Julius. On 30/07/2011, at 6:04 AM, Dianne Hackborn wrote: > Consider using loaders, for example: > > http://developer.android.com/resources/samples/Support4Demos/src/com/example/android/supportv4/app/LoaderCursorSupport.html > > On Fri, Jul 29, 2011 at 9:23 AM, Julius Spencer <jul...@msa.co.nz> wrote: > Hi, > > I have been trying to take database reads off the UI thread and am currently > using an AsyncTask, however I am running into trouble swapping out an updated > Cursor for a new one in the adapter. > (I was previously using requery() on the Cursor which had to be on the main > UI thread) > > The documentation regarding requery() says: > "Just request a new cursor, so you can do this asynchronously and update your > list view once the new cursor comes back." > > If I update the existing Cursor (mCursor) with the results from a new query > and do the following in onPostExecute of an AsyncTask: > > mAdapter.changeCursor(mCursor); > > it works pretty well on a Nexus 1. On other devices I am getting errors > because I haven't closed the old Cursor. > (java/lang/IllegalStateException;: Finalizing cursor > android.database.sqlite.SQLiteCursor on null that has not been deactivated or > closed) > > I have tried creating a new Cursor and swapping the Cursors out like so: > > if(null!=mArtists) > mCursor.close(); > mArtists = newCursor; > > but I get performance issues and the view of the list goes back to the top. > > Has anyone got any ideas on this? Alternatively does anyone have or know of > any documentation for using a CursorLoader against a SQLiteDatabase rather > than a ContentProvider? > > Thanks for any help. > > Regards, > Julius. > > -- > You received this message because you are subscribed to the Google > Groups "Android Developers" group. > To post to this group, send email to android-developers@googlegroups.com > To unsubscribe from this group, send email to > android-developers+unsubscr...@googlegroups.com > For more options, visit this group at > http://groups.google.com/group/android-developers?hl=en > > > > -- > Dianne Hackborn > Android framework engineer > hack...@android.com > > Note: please don't send private questions to me, as I don't have time to > provide private support, and so won't reply to such e-mails. All such > questions should be posted on public forums, where I and others can see and > answer them. > > > -- > You received this message because you are subscribed to the Google > Groups "Android Developers" group. > To post to this group, send email to android-developers@googlegroups.com > To unsubscribe from this group, send email to > android-developers+unsubscr...@googlegroups.com > For more options, visit this group at > http://groups.google.com/group/android-developers?hl=en -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en