根据应用程序是否第一次运行来检索正确的数据

时间:2014-12-28 00:25:54

标签: java

我想从API中检索一些数据但是根据它是否是第一次运行然后它应该从年初开始检索数据但是如果它是下一次运行那么它应该只检索新数据(即数据)仅在上一次运行后才可用。)

我的问题是保存和检索运行之间的时间戳的最佳方法。

1 个答案:

答案 0 :(得分:1)

您可以使用Preferences API以独立于系统的方式存储和读取特定于应用程序的标记。

package com.preferencetest;

import java.util.prefs.Preferences;

public class PreferenceTest {

  private static final String RUN_MARKER = "RUN_MARKER";

  public static void main(String[] args) {

    // Obtain a Preferences node for this class name.
    final Preferences pref = Preferences.userRoot().node(
        PreferenceTest.class.getName());

    // Read the RUN_MARKER value. For the first start this should be the
    // default value false.
    final boolean previouslyStarted = pref.getBoolean(RUN_MARKER, false); 

    if(!previouslyStarted) {
      // First run: Set the marker to true.
      pref.putBoolean(RUN_MARKER, true);
      System.out.println("First run");
    } else {
      System.out.println("This is not the first run.");
    }
  }
}