相关疑难解决方法(0)

即使手机处于睡眠状态,也可以保持服务正常运行?

我的应用程序中有一个服务,它设计为每10分钟运行一次.它基本上检查我们的服务器,看看是否一切正常运行,并通知用户任何问题.我创建了这个应用程序供我们公司内部使用.

我的同事在漫长的周末使用了该应用程序,并注意到该设备进入睡眠状态时未执行任何检查.我的印象是服务应该在后台继续运行,直到我明确地调用stopService()我的代码.

所以最终,我的目标是让服务运行,直到用户点击应用程序中的关闭按钮或终止进程.

我听说过一些叫做WakeLock屏幕不能关闭的东西,这不是我想要的.然后我听说了另一种称为部分WakeLock的东西,即使设备处于睡眠状态,也可以使CPU保持运行.后者听起来更接近我的需要.

我如何获得此WakeLock以及何时应该发布它并且有其他方法可以解决这个问题吗?

service android background-process wakelock

51
推荐指数
2
解决办法
4万
查看次数

如何在屏幕关闭时保持Android服务的运行?

当屏幕关闭时,我的应用程序服务暂停.

我使用以下代码启动我的服务:

if (mSharedPrefs.getBoolean("prefAutoUpdatesMain", false)) {
     Intent svc = new Intent(this, MyService.class);
     startService(svc);
}
Run Code Online (Sandbox Code Playgroud)

我怎样才能避免服务暂停?


我在MyService中要做的是从Internet下载一些数据.如果我理解了我必须遵循的过程:

  1. 获取wakeLock
  2. 下载数据
  3. 发布wakeLock

在下载数据方法时没有引用wakeLock,它是具有wakeLock的应用程序,是否正确?

默认情况下,唤醒锁是引用计数.我认为没有引用计数的wakeLock更好,一定要释放它,我错了吗?

service android

48
推荐指数
2
解决办法
5万
查看次数

需要有关如何在后台永远运行Android服务的代码示例,即使设备正在休眠,如Whatsapp?

我已经尝试了各种方法来实现这一目标,但我的服务最终会被杀死.

我想用AlarmManager每隔一小时触发一次课.即使设备处于休眠状态,它也应该发出闪烁的LED警报,振动或声音.无论如何,它应该永远运行.

我注意到Whatsapp一直在运行,即使我杀死所有正在运行的应用程序并清除内存,让设备进入睡眠状态,但仍然Whatsapp接收消息并提醒我.他们是怎么做到的?我想对我的应用做同样的事情.

service android background-process alarmmanager

27
推荐指数
2
解决办法
3万
查看次数

持久的服务

我知道有些人认为你不应该创建持久性服务.

但对于我们这些想要增加知识的人来说,如何在理论上创造一个呢?

我一直在玩,并注意到使用startForeground的服务在低内存情况下被杀死.

我已经看到了一个现已弃用的许可PERSISTENT_ACTIVITY,但这并没有做太多.

那么秘密是什么?

service android android-service

15
推荐指数
1
解决办法
3万
查看次数

如何在android中使用后台服务读取传入消息?

我正在开发一个Android应用程序,我想在不知道用户的情况下读取传入的消息.我想总是在后台运行传入的消息检查器.如果收到新消息意味着我想要读取消息的内容,那消息包含一些单词(密码)意味着我想激活应用程序

请解释我如何使用示例代码,因为我是android的新手

sms android

11
推荐指数
1
解决办法
2万
查看次数