已使用后台服务代码

时间:2018-06-16 19:08:47

标签: java android service location background-service

我有一个应用程序,必须获取我在许多活动中的位置。我找到了这段非常有用的完整代码here。它如何使用后台服务获取当前位置。我在我的代码中实现了它。第一次工作正常。接下来,当它到达这个时,如果

if (mPref.getString("service", "").matches("")) {
        medit.putString("service", "service").commit();
        Intent intent = new Intent(getApplicationContext(), GoogleService.class);
        startService(intent);

 } else {
        Toast.makeText(getApplicationContext(), "Service is already running", Toast.LENGTH_SHORT).show();
  }

我收到服务已在运行的消息。为什么会这样?我关闭并重新打开了应用程序,为什么服务仍在运行?求助,非常重要,谢谢

1 个答案:

答案 0 :(得分:0)

如果您使用SharedPreferences来保留有关Service的信息,那么该信息会在应用重新启动后继续存在,因此您的if条件始终为false(当您执行时mPref.commit() {1}}您将密钥对保存到文件中。