@Override
  public void onClick(View v) {
    boolean isPlaying = mMediaPlayer.isPlaying();
    if (v == mButtonPlayPause) {
      if (isPlaying) {
        mMediaPlayer.pause();
        mChronometer.stop();
        mButtonPlayPause.setImageResource(R.drawable.media_play);
        mButtonPlayPause.setContentDescription(getResources().getText(R.string.play));
      } else {
        mMediaPlayer.start();
        mChronometer.setBase(SystemClock.elapsedRealtime() - mMediaPlayer.getCurrentPosition());
        mChronometer.start();
        mButtonPlayPause.setImageResource(R.drawable.media_pause);
        mButtonPlayPause.setContentDescription(getResources().getText(R.string.pause));
      }
    } else if (v == mButtonSkip) {
      mIndex = (mIndex + 1) % mItems.size();
      onClick(mButtonStop);
      if (isPlaying) {
        onClick(mButtonPlayPause);
      }
    } else if (v == mButtonRewind) {
      // mMediaPlayer.seekTo(0);
      mChronometer.setBase(SystemClock.elapsedRealtime());

      if (mIndex == 0) {
        mIndex = mItems.size();
      }

      if (mIndex > 0) {
        mIndex = (mIndex - 1) % mItems.size();
      }

      onClick(mButtonStop);
      if (isPlaying) {
        onClick(mButtonPlayPause);
      }

    } else if (v == mButtonStop) {
      mMediaPlayer.stop();
      mMediaPlayer.reset();
      mChronometer.stop();
      mChronometer.setBase(SystemClock.elapsedRealtime());
      prepare();
    } else if (v == mButtonConfig) {

      Intent i = new Intent(this, ConfigActivity.class);
      startActivity(i);
      Toast.makeText(this, "Config", Toast.LENGTH_LONG).show();
    }
  }
  private void startChronoAndSeek() {
    firstChornometer.setBase(SystemClock.elapsedRealtime());
    firstChornometer.start();

    observer = new MediaObserver();
    new Thread(observer).start();
  }
  private void prepare() {
    setEnabledButton(false);

    mMediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
    Item playingItem = mItems.get(mIndex);
    try {
      mMediaPlayer.setDataSource(getApplicationContext(), playingItem.getURI());
      mMediaPlayer.prepare();
    } catch (IllegalArgumentException e) {
      Toast.makeText(getApplicationContext(), e.getMessage(), Toast.LENGTH_LONG).show();
      e.printStackTrace();
    } catch (SecurityException e) {
      Toast.makeText(getApplicationContext(), e.getMessage(), Toast.LENGTH_LONG).show();
      e.printStackTrace();
    } catch (IllegalStateException e) {
      Toast.makeText(getApplicationContext(), e.getMessage(), Toast.LENGTH_LONG).show();
      e.printStackTrace();
    } catch (IOException e) {
      Toast.makeText(getApplicationContext(), e.getMessage(), Toast.LENGTH_LONG).show();
      e.printStackTrace();
    }
    mTextViewArtist.setText(playingItem.artist);
    mTextViewAlbum.setText(playingItem.album);
    mTextViewTitle.setText(playingItem.title);
    mButtonPlayPause.setImageResource(R.drawable.media_play);
    mButtonPlayPause.setContentDescription(getResources().getText(R.string.play));
    mChronometer.setBase(SystemClock.elapsedRealtime());
  }
  public void play() {

    // Hide the finish button
    finishButton.setVisibility(View.INVISIBLE);

    // Changes the text and the colour of the button
    startButton.setText("Pause");
    startButton.getBackground().setColorFilter(Color.YELLOW, PorterDuff.Mode.MULTIPLY);

    // Resume time count from previous time.
    myChrono.setBase(SystemClock.elapsedRealtime() + timeWhenPaused);
    myChrono.start();

    // Only drop a green marker at the beginning of the activity
    if (firstTime == true) {

      // Drop Green marker at start position
      map.setMapType(GoogleMap.MAP_TYPE_NORMAL);
      LatLng startLocation = new LatLng(latitude, longitude);
      routePoints.add(startLocation);
      polyline.add(startLocation);
      CameraUpdate update = CameraUpdateFactory.newLatLngZoom(startLocation, 17);
      map.addMarker(
          new MarkerOptions()
              .position(startLocation)
              .icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_GREEN)));
      map.animateCamera(update);
      firstTime = false;
    }
  }
Example #5
0
  public void start_GPS_Capture()
      throws ParserConfigurationException, TransformerConfigurationException {

    gpx_document = DocumentBuilderFactory.newInstance().newDocumentBuilder().newDocument();

    rootElement = gpx_document.createElement("gpx");
    Attr xmlns = gpx_document.createAttribute("xmlns");
    Attr version = gpx_document.createAttribute("version");
    Attr creator = gpx_document.createAttribute("creator");

    xmlns.setValue("http://www.topografix.com/GPX/1/1");
    version.setValue("1.1");
    creator.setValue("http://offtrek.com");

    rootElement.setAttributeNode(xmlns);
    rootElement.setAttributeNode(version);
    rootElement.setAttributeNode(creator);

    track = gpx_document.createElement("trk");
    trackSegment = gpx_document.createElement("trkseg");

    track.appendChild(trackSegment);
    rootElement.appendChild(track);
    gpx_document.appendChild(rootElement);

    Chronometer chrono = (Chronometer) findViewById(R.id.chronometer);
    chrono.setBase(chronoBase);
    chrono.start();
    GPS_captureStarted = true;
    locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 1000, 0, this);
  }
  @Override
  public void onClick(View view) {
    switch (view.getId()) {
      case R.id.switch_btn:
        switchCamera();
        break;
      case R.id.recorder_start:
        // start recording
        if (!startRecording()) return;
        Toast.makeText(this, R.string.The_video_to_start, Toast.LENGTH_SHORT).show();
        btn_switch.setVisibility(View.INVISIBLE);
        btnStart.setVisibility(View.INVISIBLE);
        btnStart.setEnabled(false);
        btnStop.setVisibility(View.VISIBLE);
        // 重置其他
        chronometer.setBase(SystemClock.elapsedRealtime());
        chronometer.start();
        break;
      case R.id.recorder_stop:
        btnStop.setEnabled(false);
        // 停止拍摄
        stopRecording();
        btn_switch.setVisibility(View.VISIBLE);
        chronometer.stop();
        btnStart.setVisibility(View.VISIBLE);
        btnStop.setVisibility(View.INVISIBLE);
        new AlertDialog.Builder(this)
            .setMessage(R.string.Whether_to_send)
            .setPositiveButton(
                R.string.ok,
                new DialogInterface.OnClickListener() {

                  @Override
                  public void onClick(DialogInterface dialog, int which) {
                    dialog.dismiss();
                    sendVideo(null);
                  }
                })
            .setNegativeButton(
                R.string.cancel,
                new DialogInterface.OnClickListener() {

                  @Override
                  public void onClick(DialogInterface dialog, int which) {
                    if (localPath != null) {
                      File file = new File(localPath);
                      if (file.exists()) file.delete();
                    }
                    finish();
                  }
                })
            .setCancelable(false)
            .show();
        break;

      default:
        break;
    }
  }
 protected void stopChronoAndSeek() {
   if (observer != null) observer.stop();
   seekBarSound.setProgress(0);
   firstChornometer.stop();
   firstChornometer.setBase(SystemClock.elapsedRealtime());
   if (soundLeft != null) soundLeft.cancel();
   secondChronometer.setText("00:00");
 }
 public void startScan() {
   listener.onStartScanRequested();
   rotateLogo();
   txtAccuracy.setText("0.00");
   chronometer.setBase(SystemClock.elapsedRealtime());
   chronometer.start();
   isScanning = true;
   btnScan.setText(ctx.getString(R.string.stop_scan));
 }
  // @Override
  public void onClick(View v) {

    switch (v.getId()) {

        /* case R.id.recordIntent:
        Intent i = new Intent("android.provider.MediaStore.RECORD_SOUND");
        startActivityForResult(i, 0);
        break;*/

      case R.id.playAudio:
        watch.setBase(SystemClock.elapsedRealtime());
        watch.start();
        playRecording();
        watch.stop();
        break;

      case R.id.startAudio:
        watch.setBase(SystemClock.elapsedRealtime());
        watch.start();
        startRecording();
        break;

      case R.id.stopAudio:
        watch.stop();
        stopRecording();
        break;

      case R.id.pickDateAudio:
        showDatePickerDialog(v);
        break;

      case R.id.pickTimeAudio:
        showTimePickerDialog(v);
        break;

      case R.id.saveAudio:
        saveAudioData(v);
        break;

      case R.id.cancelAudio:
        break;
    }
  }
Example #10
0
  public static void start() {
    chrono.setBase(SystemClock.elapsedRealtime());
    lapTimes.clear();
    adapter.notifyDataSetChanged();
    chrono.start();

    startButt.setEnabled(false);
    lapButt.setEnabled(true);
    stopButt.setEnabled(true);
  }
  private void resumeSnapping() {
    Log.d(LOG_TAG, "resumeSnapping");

    if (mCamera == null) mCamera = setCameraInstance();
    isSnapping = true;
    startCameraSnappingThread();

    mFlightDuraChrono.setBase(SystemClock.elapsedRealtime() - mDurationOfFlight);
    mFlightDuraChrono.start();
  }
 /** Start the timer of the chronometer. */
 private void startTimer() {
   startBn.setEnabled(false);
   stopBn.setEnabled(true);
   isPaused = false;
   if (isPausedFirstRun) {
     matchChron.start();
   } else {
     matchChron.setBase(SystemClock.elapsedRealtime());
     matchChron.start();
   }
 }
  private void registerCallDurationTimer(View v, LinphoneCall call) {
    int callDuration = call.getDuration();
    if (callDuration == 0 && call.getState() != State.StreamsRunning) {
      return;
    }

    Chronometer timer = (Chronometer) v.findViewById(R.id.callTimer);
    if (timer == null) {
      throw new IllegalArgumentException("no callee_duration view found");
    }

    timer.setBase(SystemClock.elapsedRealtime() - 1000 * callDuration);
    timer.start();
  }
Example #14
0
  private void initResVideoSuccess() {
    isConnect = true;
    mInfoLl.setVisibility(View.GONE);
    mVedioGoing.setVisibility(View.VISIBLE);
    mLoaclVideoView.setVisibility(View.VISIBLE);

    mChronometer = (Chronometer) findViewById(R.id.chronometer);
    mChronometer.setBase(SystemClock.elapsedRealtime());
    mChronometer.setVisibility(View.VISIBLE);
    mChronometer.start();

    // 默认设为前置摄像头

  }
  public void Cronometro() {
    // Inciar cronometro
    cronometro.setBase(SystemClock.elapsedRealtime());
    cronometro.start();
    cronometro.setOnChronometerTickListener(
        new Chronometer.OnChronometerTickListener() {

          @Override
          public void onChronometerTick(Chronometer chronometer) {
            long elapsedTime = SystemClock.elapsedRealtime() - cronometro.getBase();
            if (elapsedTime > 2400) {
              cronometro.stop();
              Perder();
            }
          }
        });
  }
Example #16
0
 public void onFabClick(View v) {
   if (!data.isRunning()) {
     fab.setImageDrawable(getResources().getDrawable(R.drawable.ic_action_pause));
     data.setRunning(true);
     time.setBase(SystemClock.elapsedRealtime() - data.getTime());
     time.start();
     data.setFirstTime(true);
     startService(new Intent(getBaseContext(), GpsServices.class));
     refresh.setVisibility(View.INVISIBLE);
   } else {
     fab.setImageDrawable(getResources().getDrawable(R.drawable.ic_action_play));
     data.setRunning(false);
     status.setText("");
     stopService(new Intent(getBaseContext(), GpsServices.class));
     refresh.setVisibility(View.VISIBLE);
   }
 }
  private void startGame() {
    // generate a new set of random numbers
    generateRandomNumbers();

    // set the counters to 0
    mProgress = 0;
    mWrongAnswerCounter = 0;
    mGameScore = 0;

    // reset the text of each button
    for (int i = 0; i < mButtonValues.length; i++) {
      mNumberButtons[i].setText("" + mButtonValues[i]);
    }

    // start timer
    mTimer.setBase(SystemClock.elapsedRealtime());
    mTimer.start();

    // set game in progress flag
    mGameInProgress = true;
  }
 @Override
 public void onClick(View view) {
   if (view.getId() == R.id.id_button_start) {
     vibrator.vibrate(500);
     chronometer.setBase(SystemClock.elapsedRealtime());
     chronometer.start();
     singleton.setChronoIsStarted(true);
     changeButtonStartStop();
     communicationFragments.inverseButtonsInLap();
   } else if (view.getId() == R.id.id_button_stop) {
     chronometer.stop();
     singleton.setChronoIsStarted(false);
     changeButtonStartStop();
     communicationFragments.inverseButtonsInLap();
   } else if (view.getId() == R.id.id_button_direct_to_lap) {
     communicationFragments.changeFragment(VIEW_LAP);
     changeButtonDirect(VIEW_LAP);
   } else if (view.getId() == R.id.id_button_back_to_menu) {
     communicationFragments.changeFragment(VIEW_MENU);
     changeButtonDirect(VIEW_MENU);
   }
 }
  private void initResVideoSuccess() {
    isConnect = true;
    mVideoLayout.setVisibility(View.VISIBLE);
    mVideoIcon.setVisibility(View.GONE);
    mVideoTopTips.setVisibility(View.GONE);
    mCameraSwitch.setVisibility(View.VISIBLE);
    mVideoTipsLy.setVisibility(View.VISIBLE);

    // bottom ...
    mVideoCancle.setVisibility(View.GONE);
    mVideoCallTips.setVisibility(View.VISIBLE);
    mVideoCallTips.setText(
        getString(
            R.string.str_video_bottom_time,
            mVoipAccount.substring(mVoipAccount.length() - 3, mVoipAccount.length())));
    mVideoStop.setVisibility(View.VISIBLE);
    mVideoStop.setEnabled(true);

    mChronometer = (Chronometer) findViewById(R.id.chronometer);
    mChronometer.setBase(SystemClock.elapsedRealtime());
    mChronometer.setVisibility(View.VISIBLE);
    mChronometer.start();
  }
Example #20
0
 public void onClick(View v) {
   mChronometer.setBase(SystemClock.elapsedRealtime());
 }
  private void startSnapping() {
    Log.d(LOG_TAG, "startSnapping");

    mFlightDuraChrono.setBase(SystemClock.elapsedRealtime());
    mNumSnapET.setText("0");
  }
Example #22
0
  @Override
  public void onClick(View v) {
    super.onClick(v);
    // ///// ******** Adding On Click Actions to click listeners ********* //////////

    switch (v.getId()) {

        // // ***** if stop button pressed ****** //////
      case R.id.edit_stop_button:
        stopRecording(true);
        break;
        // // ***** if play button pressed ****** //////
      case R.id.edit_play_button:
        // //// ******** to handle playback of recorded file ********* ////////
        if (isFromFavorite) {
          mAudioPlay = new AudioPlay(mFavoriteList.id, this, isFromFavorite);
        } else {
          mAudioPlay = new AudioPlay(entry.id, this, isFromFavorite);
        }

        // ///// ******* Chronometer Starts Countdown ****** ///////
        countDownTimer =
            new MyCountDownTimer(
                mAudioPlay.getPlayBackTime(),
                1000,
                editTimeDetailsChronometer,
                editStopButton,
                editPlayButton,
                mAudioPlay);

        // //// ****** Handles UI items on button click ****** ///////
        editPlayButton.setVisibility(View.GONE);
        editStopButton.setVisibility(View.VISIBLE);
        editRerecordButton.setVisibility(View.VISIBLE);

        // /// ******** Start Audio Playback and counter to play audio
        // ****** ///////
        if (!mAudioPlay.isAudioPlaying()) {
          mAudioPlay.startPlayBack();
        } else {
          mAudioPlay.stopPlayBack();
          mAudioPlay.startPlayBack();
        }
        countDownTimer.start();
        break;

        // // ***** if rerecord button pressed ****** //////
      case R.id.edit_rerecord_button:
        isChanged = true;
        if (countDownTimer != null) {
          countDownTimer.cancel();
        }

        // /// ******* If Audio PlayBack is there stop playing audio *******//////
        if (mAudioPlay != null && mAudioPlay.isAudioPlaying()) {
          mAudioPlay.stopPlayBack();
        }

        // //// ****** Handles UI items on button click ****** ///////
        editPlayButton.setVisibility(View.GONE);
        editStopButton.setVisibility(View.VISIBLE);
        editRerecordButton.setVisibility(View.GONE);

        // //// ****** Restarts chronometer and recording ******* ////////
        if (mRecordingHelper != null && mRecordingHelper.isRecording()) {
          mRecordingHelper.stopRecording();
        }
        File mPath;
        mDatabaseAdapter.open();
        if (isFromFavorite) {
          mPath = fileHelper.getAudioFileFavorite(mFavoriteList.id);
          mDatabaseAdapter.updateFileUploadedFavoriteTable(mFavoriteList.id);
        } else {
          mPath = fileHelper.getAudioFileEntry(entry.id);
          mDatabaseAdapter.updateFileUploadedEntryTable(entry.id);
        }
        mDatabaseAdapter.close();
        mRecordingHelper = new RecordingHelper(mPath, this);
        mRecordingHelper.startRecording();
        editTimeDetailsChronometer.setTextSize(TypedValue.COMPLEX_UNIT_SP, 36);
        editTimeDetailsChronometer.setBase(SystemClock.elapsedRealtime());
        editTimeDetailsChronometer.start();
        break;

      default:
        break;
    }
  }
Example #23
0
  public void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);
    this.requestWindowFeature(Window.FEATURE_NO_TITLE);
    setContentView(R.layout.main);
    Drawable drawable = this.getResources().getDrawable(R.drawable.map_pin_24);
    final MapItemizedOverlay itemizedoverlay = new MapItemizedOverlay(drawable);
    mapView = (MapView) findViewById(R.id.mapviewMain);
    mapView.setBuiltInZoomControls(true);
    mController = mapView.getController();
    mapOverlays = mapView.getOverlays();
    myLocationOverlay = new MyLocationOverlay(this, mapView);
    mapView.getOverlays().add(myLocationOverlay);
    visitedPoints.clear();
    /*
     * not sure if final should be there but it's required by another method
     */
    final ArrayList<ParcelableGeoPoint> arrayOfParcebleGeoPoints =
        getIntent().getParcelableArrayListExtra("geoPoints");
    Bundle extras = getIntent().getExtras();
    mainPoint = extras.getParcelable("mainPoint");
    for (ParcelableGeoPoint p : arrayOfParcebleGeoPoints) {
      points.add(p.getGeoPoint());
      notYetReachedPoints.add(p.getGeoPoint());
    }

    int numOfPoints = points.size();
    for (int i = 0; i < numOfPoints; i++) {
      GeoPoint point = points.get(i);
      OverlayItem overlayitem = new OverlayItem(point, null, null);
      itemizedoverlay.addOverlay(overlayitem);
    }
    ;

    mapOverlays.add(itemizedoverlay);
    mapView.postInvalidate();

    final Chronometer cm = (Chronometer) findViewById(R.id.chronometer);
    cm.setBase(SystemClock.elapsedRealtime());
    cm.start();

    icon = this.getResources().getDrawable(R.drawable.map_pin_24_green);
    icon.setBounds(
        0 - icon.getIntrinsicWidth() / 2,
        0 - icon.getIntrinsicHeight(),
        icon.getIntrinsicWidth() / 2,
        0);
    /*Button checkPoint = (Button) findViewById(R.id.checkpoint);
    checkPoint.setOnClickListener(new OnClickListener() {

    	public void onClick(View v) {
    		// TODO Auto-generated method stub
    	}
    });*/

    /*	Button summary = (Button) findViewById(R.id.summary);
    summary.setOnClickListener(new OnClickListener() {

    	public void onClick(View v) {

    		SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
    		SharedPreferences.Editor editor = settings.edit();
    		editor.putInt("time", time);
    		editor.putInt("averageSpeed", averageSpeed);

    		// TODO Auto-generated method stub
    		Intent myIntent = new Intent(v.getContext(),
    				SummaryActivity.class);
    		myIntent.putExtra("time", cm.getBase());
    		myIntent.putExtra("geoPoints", arrayOfParcebleGeoPoints);
    		myIntent.putExtra("visitedPoints", visitedPoints);
    		myIntent.putExtra("mainPoint",mainPoint);
    		v.getContext().startActivity(myIntent);
    		finish();
    	}
    });*/

    lManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);

    locationListener =
        new LocationListener() {

          public void onStatusChanged(String provider, int status, Bundle extras) {
            // TODO Auto-generated method stub

          }

          public void onProviderEnabled(String provider) {
            // TODO Auto-generated method stub

          }

          public void onProviderDisabled(String provider) {
            // TODO Auto-generated method stub

          }

          public void onLocationChanged(Location location) {
            // TODO Auto-generated method stub
            double lat = location.getLatitude();
            double lon = location.getLongitude();
            GeoPoint point = new GeoPoint((int) (lat * 1e6), (int) (lon * 1e6));

            visitedPoints.add(new ParcelableGeoPoint(point));

            if (prevPoint != null) {
              mapOverlays.add(new RouteOverlay(prevPoint, point, 0xFF0000));
            }

            if (totalDistance == -1) {
              totalDistance = 0;
            } else {
              totalDistance = totalDistance + location.distanceTo(prevLocation);
            }
            prevLocation = location;
            prevPoint = point;

            mController.animateTo(point);

            /*
             * This for-loop checks at every GPS update if any flag is
             * within reach.
             */
            for (int i = 0; i < notYetReachedPoints.size(); i++) {
              destLocation.reset();
              destLocation.setLatitude((float) (notYetReachedPoints.get(i).getLatitudeE6() / 1E6));
              destLocation.setLongitude(
                  (float) (notYetReachedPoints.get(i).getLongitudeE6() / 1E6));
              distance = location.distanceTo(destLocation);
              if (distanceToNearestPoint > distance) {
                distanceToNearestPoint = distance;
              }

              /*
               * user catches a flag if current position is within 50m of
               * a flag
               */
              if (distance < 10) {
                /*
                 * checkpoint reached
                 */
                Context context = getApplicationContext();
                CharSequence text = "Checkpoint reached!";
                int duration = Toast.LENGTH_SHORT;
                Toast toast = Toast.makeText(context, text, duration);
                toast.show();
                /*
                 * remove the reached point from the list
                 */
                for (int a = 0; a < itemizedoverlay.size(); a++) {
                  if (notYetReachedPoints.get(i).equals(itemizedoverlay.getItem(a).getPoint()))
                    itemizedoverlay.getItem(a).setMarker(icon);
                }

                notYetReachedPoints.remove(i);

                /*
                 * change color of flag (code not complete)
                 */

              }
            }

            /*
             * not really tested yet
             */
            TextView distance_to_point = (TextView) findViewById(R.id.distance_to_point);
            distance_to_point.setText("Distance to nearest point: " + distanceToNearestPoint + "m");

            speed = location.getSpeed();
            TextView speed_text = (TextView) findViewById(R.id.speed);
            speed_text.setText("Speed: " + speed + "m/s");

            TextView totalDistance_text = (TextView) findViewById(R.id.total_distance);
            totalDistance_text.setText("Total distance: " + totalDistance);

            if (notYetReachedPoints.isEmpty()) {

              /*
               * This is part of a strange bug-fix the location listener
               * does not shut off when the "finish()" method is called
               */
              lManager.removeUpdates(locationListener);
              lManager = null;

              Intent myIntent = new Intent(MainActivity.this, SummaryActivity.class);
              myIntent.putExtra("time", cm.getBase());
              myIntent.putExtra("totalDistance", totalDistance);
              myIntent.putExtra("geoPoints", arrayOfParcebleGeoPoints);
              myIntent.putExtra("visitedPoints", visitedPoints);
              myIntent.putExtra("mainPoint", mainPoint);

              MainActivity.this.startActivity(myIntent);
              finish();
            }
          }
        };

    lManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, this.locationListener);
  }