Just putting a "dbstatus" flag in the dbhelper class. When open() is called, I check the flag to see if the db is already open, if so I do nothing, otherwise I do the open stuff and then I set the flag.
On Thu, Apr 29, 2010 at 2:26 PM, gcstang <[email protected]> wrote: > As am I, I'm doing the same with onPause/onResume. > > Federico how are you checking if your database connection is open? > > On Apr 28, 3:18 am, Federico Paolinelli <[email protected]> wrote: >> An sqllitedb (helper) object for each activity (but the open one is >> only in the active activity). Every time an activity closes or pauses, >> I call the close() method. >> However, I am interested in any more elegant and standard solution of >> this problem. >> >> Federico >> >> On 27 Apr, 21:49, goosedroid <[email protected]> wrote: >> >> >> >> >> >> > Frederico, were you sharing the same SQLiteDatabase instance object >> > between all activities via some singleton helper class, or was each >> > Activity instantiating a new SQLiteDatabase object? >> >> > On Apr 27, 8:58 am, Federico Paolinelli <[email protected]> wrote: >> >> > > On 27 Apr, 13:48, goosedroid <[email protected]> wrote: >> >> > > > I have been trying to find a discussion on the best way to handle a >> > > > common sqlite database which is shared by multiple Activities (or >> > > > multiple Activities and Services). This is all in the same >> > > > application. >> >> > > > It seems that if each Activity has: >> >> > > > void onCreate() >> > > > { >> > > > SQLiteDatabase db = SQLiteDatabase.openDatabase(...) >> > > > ... >> >> > > > } >> >> > > > void onDestroy() >> > > > { >> > > > db.close(); >> > > > ... >> >> > > > } >> >> > > > this would be wasteful, assuming there would be N SQLiteDatabase >> > > > objects with N activities that needed access to the same db. >> >> > > > One could go about making a singleton, but who would be responsible >> > > > for closing the database when the application terminates? >> >> > > > Would it be best to extend the android.app.Application class and hook >> > > > into the onTerminate() to close the database? >> >> > > > Taking a look at NotePadv3Solution, I can't find where it closes the >> > > > database - and that is a pretty straightforward example. >> >> > > > -- >> >> > > What I did (which may not be the best solution is to call the >> > > db.close() in onPause() method and call the db.open() in any >> > > onResume() method of all activities. >> > > Be aware that during the activity creation both onCreate() and >> > > onResume() methods are called, so you need to check the db is not >> > > opened yet. >> >> > > Hope this helps, >> >> > > Federico >> >> > > -- >> > > You received this message because you are subscribed to the Google >> > > Groups "Android Developers" group. >> > > To post to this group, send email to [email protected] >> > > To unsubscribe from this group, send email to >> > > [email protected] >> > > For more options, visit this group >> > > athttp://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 [email protected] >> > To unsubscribe from this group, send email to >> > [email protected] >> > For more options, visit this group >> > athttp://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 [email protected] >> To unsubscribe from this group, send email to >> [email protected] >> For more options, visit this group >> athttp://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 [email protected] > To unsubscribe from this group, send email to > [email protected] > For more options, visit this group at > http://groups.google.com/group/android-developers?hl=en -- -------- Federico -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/android-developers?hl=en

