title: How accurate can a stopwatch be in Android OS?
body: <p>so I need to make a simple but reliable stopwatch with an <strong>1 ms accuracy</strong> for an <strong>android</strong> device (transformer tablet). I have no experience at all with android.
  After searching I'm not finding any specifics about what's the maximum accuracy I could get in this specific context(described below). Perhaps some one here can give me the info I need. 
  As the stopwatch is going to be used for time reactions and diagnoses 1 ms is the accuracy we need.</p>
  
  <p><strong>what the stopwatch should do is quite simple:</strong></p>
  
  <ul>
  <li>Obviously the program start at 00:00.000, from there 7 measures are going to be taken. When the users push a key or the screen, the program should log the elapsed time. at the 7th time the program will save the measures in a txt file.</li>
  </ul>
  
  <p>I don't even need to display the stamp or the elapsed time and refresh the display. 
  except for the OS apps, no other applications are going to be running.</p>
  
  <p>Theoretically System.nanoTime()  or timestamp would do it. But I'm not sure if this will give me the 1 ms accuracy that I need. <strong>can they give me the accuracy I'm looking for?  a brief explanation would be useful. 
  are there another methods?</strong>
  If some one is a android developer the info will be really appreciated .</p>
  
  <p>Thanks,</p>
  
  <p><strong>UPDATE</strong>: Altho the user Nanno made a valid point about the limitations in the Android OS, thus making the 1 ms accuracy stopwatch impossible in a "tablet-only" scenario, Julian's further answer described an interesting and relatively cheap solution to accomplish the goal using Android ADK (external hardware). </p>