java - Android onStartCommand 服务

标签 java android service

我有一项服务,只要用户使用它,我就会尝试持续运行。问题是该服务使用了大量内存;我猜是因为它会通知用户并不断显示图像。所以我将大部分代码放在另一个 Activity 中。服务只是调用 Activity 。

问题是我正在尝试使用返回的 Start_Sticky 在需要时重新启动服务。它需要大约 2 小时才能用完足够的内存以需要重新启动。当它重新启动时,它不会执行 onStartCommand 是我遗漏了什么吗?

public class AUTOAlarmService extends Service {
@Override
public void onCreate() {
}

@Override
public IBinder onBind(Intent intent) {
    return null;
}

@Override
public int onStartCommand(Intent intent, int flags, int startId) {
    Intent DI = new Intent(getBaseContext(), AUTOSERVICES.class);
    DI.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    getApplication().startActivity(DI);
    return START_STICKY;
}

@Override
public boolean onUnbind(Intent intent) {
    return super.onUnbind(intent);
}

最佳答案

我认为您应该重新考虑已完成的一些工作,因为您的服务占用了太多资源,无论如何都不应该发生这种情况。有许多应用程序提供大量服务,但没有为此重新启动设备的问题。

但是,如果您想重新启动服务,则必须停止然后重新启动该服务。

stopService(new Intent(this, YourService.class));
startService(new Intent(this, YourService.class));

希望对您有所帮助。

关于java - Android onStartCommand 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18091507/

相关文章:

java - 在 JFrame Java 上在图像上方追踪一条线

java - Play Framework : Sorting crud table fields

java - 从 EOC(同轴以太网)设备检索数据

java - 在 Canvas Android中触摸事件后在随机位置绘制矩形

android - ImageView:在 Button 上方适当缩放

Java ServiceImpl 方法不断返回 null

java - GUI 使用 JFrame 和 JPanel 绘制自定义形状

如果我使用 intent 进入主屏幕,Android 服务将被终止

android - 取回服务中的按键

android - 前台服务被安卓杀死