繁体   English   中英

应用退出时将数据转储到文件

dumping data to file when app quits

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

在iphone项目中,您都建议将从用户收集的数据转储到本地文件的最佳位置是什么? 您会说applicationWillTerminate是一个不错的选择吗?

谢谢!

2 个回复

在iOS 4.x上,更好的选择是applicationDidEnterBackground:

实际上,根据Apple文档,由于内存不足,可以随时终止后台应用程序。 因此,建议在应用程序进入后台时使任何状态信息保持不变。

UIApplicationDelegate协议的摘录:

您应该使用此方法释放共享资源,保存用户数据,使计时器无效以及存储足够的应用程序状态信息,以将应用程序还原到当前状态,以防以后被终止。 您还应该禁用对应用程序用户界面的更新,并避免使用某些类型的共享系统资源(例如用户的联系人数据库)。 还必须避免在后台使用OpenGL ES。

此方法的实现大约需要五秒钟来执行任何任务并返回。 如果您需要更多时间...

同样来自Apple Docs的applicationWillTerminate:

对于不支持后台执行或与iOS 3.x或更早版本链接的应用程序,总是在用户退出应用程序时调用此方法。 对于支持后台执行的应用程序,当用户退出应用程序时通常不会调用此方法,因为在这种情况下,应用程序只是移至后台。 但是,在应用程序在后台运行(未挂起)并且系统出于某种原因需要终止它的情况下,可以调用此方法。

因此,如果您明确要求不支持您的应用程序后台运行,或者您针对iOS 3.x进行链接,则应考虑同时保留两个位置(applicationWillTerminate和applicationWillEnterBackground)以捕获情况。

1 在应用退出时转储NSUserDefaults?

我正在使用NSUserDefaults在我的应用程序运行时保存一些数据,但我想在应用程序终止时转储所有数据。 这是可能的,如果是这样,我该怎么做? 谢谢! ~Carpetfizz我知道有这个,但我不知道该把它放在哪里。 它应该进入应用代理吗? ...

3 转储数据库时为空文件

我正在尝试在Windows Server 2012 R2上进行数据库转储备份,这使我可以将数据库中的每个表转储到每个单独的文件中。 我已经创建了daily_dump.bat,其中包含以下脚本; 好的,它似乎工作正常,每个表都有一个file.sql,但转储的文件为空。 编辑:文 ...

4 首次启动时通过iOS应用中的转储文件创建数据库

我正在创建一个具有庞大的预填充sqlite数据库的iOS应用程序。 数据库文件约为140MB。 我已经转储了该数据库,并以RAR格式对其进行了压缩,现在它的大小约为16MB。 我想知道是否有可能将转储文件(16MB)与iOS应用程序捆绑在一起,解压缩.rar文件并在运行时(即在应用程序 ...

5 在应用退出时保存Android应用数据

似乎有大量关于保存Activity状态的信息,但是我找不到很多关于找到Application状态的信息。 我正在寻找一些设计思路来解决我遇到的问题。 我正在开发一个具有相当大的数据模型(1-2 MBytes)的游戏。 这个模型存在于任何Activity之外,实际上有许多活动都与它相互作 ...

6 创建核心转储时设置退出状态

例如,调用exit(100)将退出状态为100的应用程序,并且在创建核心转储时,调用raise(SIGABRT)中止状态为134的应用程序。 但是,如果我希望核心转储具有状态100或任何其他任意值,该怎么办? 我怎样才能做到这一点 ? 我知道有几个信号会触发核心转储,但它们似乎有固定的退出 ...

9 每当应用程序崩溃时为其创建转储文件

每当我的应用程序崩溃时,我都会尝试为它创建一个转储文件。 我目前正在使用带有 -e 标志的 procdump.exe 来执行此操作,因此如果我的应用程序中有未处理的异常,procdump 会为我创建一个转储文件。 我以为我已经完成了,但后来我发现我的应用程序崩溃并且 procdump 没有创建转储 ...

10 使用转储sql文件中的数据填充Rails应用

我想将数据库导入Rails应用程序,我有一个数据库转储文件,其中: 当然,实际的列表更长。 有没有一种方法可以将该INSERT语句放置在Rails应用程序中的某处并为我的数据库设置种子。 假设我有客户模型。 在我的开发环境中,我使用sqlite,数据从mysql数据库中转储。 ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM