1

我们正在编写一个(行业特定)应用程序来维护它自己的日志文件(我知道我们应该使用 android 日志,但出于商业目的,我们需要以非常特定的格式维护这个日志文件。)这个应用程序不适合大众市场,并且用户将清楚地意识到应用程序将遭受的电池消耗。

首先,该应用程序有一项服务必须始终保持与服务器的连接。我们通过使用部分唤醒锁实现了这一点,一旦屏幕时间结束,它就会按预期工作。

然而,我们的问题是,当屏幕时间结束时,我们的记录器模块停止写入位于外部存储上的文件,一旦屏幕再次启动,记录器会在短时间内恢复。

我们知道应用程序没有被系统杀死(由于前台服务),因为当它重新启动时,一切都保持原样。(重启让我们回到不同的屏幕)

是否有另一种方法可以强制系统保持文件流打开?为什么我们持有的部分唤醒锁还没有做到这一点?

必须有一种方法可以随时写入文件。

4

2 回答 2

0

没有看到代码很难说。鉴于您的描述,部分唤醒锁是最佳选择,它应该防止 CPU 进入睡眠状态,这样只要您持有唤醒锁,您就可以运行任何您喜欢的代码。根据您的描述,听起来部分唤醒锁定没有生效。检查代码以确保您正在执行诸如在设备显示屏进入睡眠状态时释放唤醒锁之类的操作。

于 2011-09-20T04:42:49.667 回答
0

结果证明这是一个特定于设备/平台的问题,因为随着时间的推移问题已经解决了!

于 2014-02-04T05:07:03.310 回答