androidandroid-notificationschronometerandroid-remoteview

Chronometer start from specific value in Notification RemoteViews


I'm trying to start the chronometer in a new notification but from a paused(elapsed) "the elapsed time is got from another chronometer", not from zero

The start base in Notification RemoteViews.class of chronometer is different from the start base in Chronometer.class it has different calculations

Notification notification = new 
NotificationCompat.Builder(getApplicationContext())
                        .setSmallIcon(R.mipmap.ic_launcher)
                        .setContentTitle(songName).build();
notification.contentView = simpleContentView;

And I get the timeWhenPaused

long timeWhenPaused = myChronometer.getBase() - SystemClock.elapsedRealtime();

Then create the chronometer

notification.contentView.setChronometer(R.id.chronometer_recorder
                            , (SystemClock.elapsedRealtime() + timeWhenPaused)
                            , null
                            , true
                    );

It starts from Zero


Solution

  • I tried many method with calculations finally got this.

    long elapsedMillis = SystemClock.elapsedRealtime() - myChronometer.getBase();
    

    Then

    notification.contentView.setChronometer(R.id.chronometer_recorder_notification
                        ,(SystemClock.elapsedRealtime() - elapsedMillis ^5)
                        ,null
                        ,true
                );