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 at http://groups.google.com/group/android-developers?hl=en

