사용자가 문자를 입력하기 시작한 시간을 beforetime, 입력을 끝내고 개행문자 엔터를 누른시간을 aftertime이라하고

inputET.setOnKeyListener(new OnKeyListener() {
   long before, after;
   public boolean onKey(View v, int keyCode, KeyEvent event) {
    if (event.getAction() == KeyEvent.ACTION_DOWN) {
     
     before = android.os.SystemClock.uptimeMillis();
      
     if (keyCode == KeyEvent.KEYCODE_ENTER) {
      after = android.os.SystemClock.uptimeMillis();
      
      double usedTime = (after - before);



이런식으로하여 usedTime을 구하니 에뮬레이터상에서는 의도한대로 사용자가 입력을 시작한시간부터
끝낸시간까지 소요된 시간 usedTime이 제대로 측정되는데, 안드로이드폰 갤럭시S 에 옮겨서 실행을 하니 무조건 0으로 측정되네요.

아마도..  
before = android.os.SystemClock.uptimeMillis();
  after = android.os.SystemClock.uptimeMillis();

이것을 같은것으로 간주하고 그렇게 되는것같은데.. 어떻게 해결할수 있을가요?