我有几个问题,一个闹钟应用,我发展。

这是我认为这是一个有点怪异的第一件事是,当警报响起,并唤醒手机上来。这些东西happend。

  

OnCreate中,点击   结果的onResume   在onPause结果   的onResume

为什么它们的顺序运行?最后两个不应该叫什么名字?这是什么使我麻烦大了,因为当我按下家里或回手机上,在onPause运行,我想调用finish()的。而这部分作品,因为它应该,但是当手机从通话的onPause ...

的睡眠bacause唤醒UPP不起作用

任何想法?

有帮助吗?

解决方案

我建议你看看官方的报警应用程序如何处理事件: https://android.googlesource.com/platform/packages/apps/DeskClock

其他提示

我也有类似的问题:ⅰ创建活动并在后台服务。当服务从网络接收的一些数据会带来向上的活动。 一切工作正常,直到活动在的onStop阶段,屏幕变黑。 当我有这种情况,我请求活动重启,我有:

onRestart 在onStart 的onResume 在onPause onNewIntent 的onResume

正如你可以看到我有一个的onResume,在onPause和其他的onResume和活动来提供给用户。

似乎是因为我们使用一个singleTop或singleInstance活性(也许还出现在singleTask)。问题是,当你发送一个Intent到一个已创建singleTop活动,您的新意图活跃onNewIntent()方法。从API可以看到的是:

  

的活动将始终被暂停   接收到新的意图之前,所以你   可以指望的onResume()被调用   后该方法

所以也许这就是为什么你收到的onResume-的onPause-的onResume电话。

然而,这是一个奇怪的行为!

你真的想在onPause调用完成()()?当当前活动不是在前台任何更多的onPause()被调用。也许你想在你的onStop()方法调用完成()来代替。请参阅 Activity lifecycle 获得的信息。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top