Android服务无限期地运行

时间:2013-05-25 18:31:28

标签: android service

我正在尝试在android中创建一个服务,我想继续无限期地在后台运行。所以我尝试创建一个像:

@Override
public IBinder onBind(Intent arg0) {
    // TODO Auto-generated method stub
    return null;
}

@Override
public void onCreate() {
    super.onCreate();
}

@Override
public void onDestroy() {
    super.onDestroy();
    Toast.makeText(this, mssg, Toast.LENGTH_SHORT).show();
}

public int onStartCommand(Intent intent, int flags,int startid) {
    Toast.makeText(this, mssg, Toast.LENGTH_LONG).show();
    Log.d("Start:", "Service running");

           // my code here

    return START_STICKY;
}

但是当我运行此代码时,toast消息和日志只显示一次,所以它意味着服务仅在第一次运行。如果它再次运行n再次调用它的哪个API?

谢谢, 阴影。

2 个答案:

答案 0 :(得分:1)

无限期地运行服务并一次又一次地运行相同的代码是两回事。只要Android系统不决定停止它,您提供的代码就可以让服务运行后台。

不确定您要实施哪些功能,但我建议您仔细阅读服务的用途以及您的要求。

答案 1 :(得分:0)

我建议你改变return START_STICKY;return START_NOT_STICKY;

详见文档here

相关问题