我努力理解SQLiteOpenHelper
背后的想法。它有onCreate()
/ onUpdate()
方法,应该被覆盖,但我不明白是什么调用它们或何时调用它们。 Android会在第一次运行应用程序时调用这些方法(在我的情况下不会发生这种情况),或者我应该手动调用它们?我查阅了文档,但无法找到问题的答案。
答案 0 :(得分:2)
当您创建扩展SQLiteOpenHelper
类并请求读/写的类对象时,会自动调用它们。
从技术上讲,当检测到数据库文件尚不可用时,会调用onCreate
方法。除非您清理应用程序数据,否则只调用一次。但是,如果发现数据库的版本号增加,则会调用onUpdate
。
答案 1 :(得分:1)
当您请求可读和/或可写的数据库(如果未创建数据库)时,框架会调用“onCreate”等重写方法。如果您开发应用程序并更改数据库版本,那么'onUpgrade'非常有用,它就是调用它的部分。该框架将占据最大的部分。您将从数据源类中调用方法。 有关更长的解释:http://developer.android.com/reference/android/database/sqlite/SQLiteOpenHelper.html
一个很棒的教程: http://www.vogella.com/articles/AndroidSQLite/article.html