Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/224.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android:进程生命周期和数据库访问_Android_Database_Lifecycle - Fatal编程技术网

Android:进程生命周期和数据库访问

Android:进程生命周期和数据库访问,android,database,lifecycle,Android,Database,Lifecycle,在下列假设下: 每个阻塞操作(包括I/O,包括db访问)都必须发生在UI线程之外 如果没有活动或服务处于活动状态,则关联的进程有资格以优先级()终止 离开活动时,如何在数据库(sqlite)中保存某些内容 实际上,在onPause()、onStop()或onBackPressed()中,您不能写入数据库(UI线程中的I/O)。因此,您可以创建线程或异步任务,但在这种情况下,在异步任务执行期间可能没有活动或服务处于活动状态,因此进程将被视为“非活动”,并将优先终止 对于一个很长的操作,您可以创建一

在下列假设下:

  • 每个阻塞操作(包括I/O,包括db访问)都必须发生在UI线程之外
  • 如果没有活动或服务处于活动状态,则关联的进程有资格以优先级()终止
  • 离开活动时,如何在数据库(sqlite)中保存某些内容

    实际上,在
    onPause()
    onStop()
    onBackPressed()
    中,您不能写入数据库(UI线程中的I/O)。因此,您可以创建
    线程
    异步任务
    ,但在这种情况下,在
    异步任务
    执行期间可能没有活动或服务处于活动状态,因此进程将被视为“非活动”,并将优先终止

    对于一个很长的操作,您可以创建一个服务,但您不能仅为将状态保存到数据库中而创建服务


    你怎么看?

    为什么你“不想只在将状态保存到数据库中时才这样做”?想象一下,你想在离开活动时编辑一个配置文件并将其保存到数据库中:我认为使用一个服务会有点过头,不是吗?一个反问:如果您在离开活动时保存了它,为什么不在用户更改字段后立即保留任何更改?或者提供一个专用的保存按钮,该按钮将(a)阻止并保存,b)随后离开活动?