相关疑难解决方法(0)

START_STICKY无法在Android KitKat上运行

我的一个应用程序有一个backgrouod服务,它使用START_STICKY返回代码onStartCommand在系统杀死它时自动重启.似乎这不再适用于Android KitKat.这有什么解决方案吗?我应该在Kitkat做一些不同的事情来保持服务的运行吗?

注意:在Android-Devlopers小组中有一个关于从最近的应用列表行为中滑动应用程序的类似讨论.这两个问题可以相关吗? https://groups.google.com/forum/#!topic/android-developers/H-DSQ4-tiac

编辑:看到Android问题跟踪器上有开放的错误:

https://code.google.com/p/android/issues/detail?id=63793 https://code.google.com/p/android/issues/detail?id=63618

Edit2:即使服务正在运行startForeground,在单独的进程android:stopWithTask="false"中使用AndroidManifest.xml文件中的标志,也会发生同样的情况......

Edit3:Android问题跟踪器上的更多相关错误:

https://code.google.com/p/android/issues/detail?id=62091 https://code.google.com/p/android/issues/detail?id=53313 https://code.google. COM/p /安卓/问题/细节?ID = 104308

是否有某种解决方法来获得以前的行为?

android sticky android-service

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

Android系统.警报管理器在奇怪的时间触发

我使用以下代码设置重复警报(每5分钟一次).

public void SetAlarm(Context context)
{
     AlarmManager am=(AlarmManager)context.getSystemService(Context.ALARM_SERVICE);
     Intent i = new Intent(context, Alarm.class);
     PendingIntent pi = PendingIntent.getBroadcast(context, 0, i, 0);
     am.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(), 1000 * 60 * 5, pi); // Millisec * Second * Minute
 }
Run Code Online (Sandbox Code Playgroud)

似乎工作正常(它运行近20个小时),并在服务器中,我可以看到一些不断的消息到达.

然而,有些事情是关于时代的:我希望时间是每五分钟一次,而且似乎在服务器中我在不同的时间收到消息.

当手机处于睡眠模式(夜晚)时,我会在服务器收到消息时添加第一个序列:

05:13:51,
05:18:54,
05:24:54,
05:28:54,
05:33:51,
05:38:54,
05:52:45,
05:54:54,
05:58:52,
06:04:54,
06:08:54,
06:16:19,
06:18:54,
06:24:54,
06:28:54,
06:34:54,
06:48:42,
06:48:44,
06:58:54,
Run Code Online (Sandbox Code Playgroud)

我不时使用手机的另一个顺序是:

11:08:46,
11:13:45,
11:18:48,
11:23:52,
11:33:54,
11:38:47,
11:48:47,
11:58:47,
12:03:52,
12:08:45,
12:14:49,
12:18:43,
12:25:37,
12:28:41,
12:34:56,
12:38:47,
12:43:48,
12:48:56,
12:54:07,
12:58:48,
13:03:43, …
Run Code Online (Sandbox Code Playgroud)

performance android alarm alarmmanager

9
推荐指数
1
解决办法
3284
查看次数