Hi you can use below code this is the example i have given you need to make changes according to your requiremnts
try {
Calendar c2 = Calendar.getInstance();
SimpleDateFormat df2 = new SimpleDateFormat("HH:mm:ss aa",Locale.US);
String formattedTime = df2.format(c2.getTime());
date2 = df2.parse(formattedTime);
long mills = date2.getTime() - date1.getTime();
int Hours = (int) (mills/(1000 * 60 * 60));
int Minuets = (int) (mills/(1000*60)) % 60;
int Seconds = (int) (mills/1000) % 60;
String hr = String.format("%02d", Hours);
String min = String.format("%02d", Minuets);
String sec = String.format("%02d", Seconds);
endTime = hr + ":" + min + ":" +sec; // updated value every1 second
} catch (ParseException e) {
e.printStackTrace();
}
So for your question use below function to get answer and import below clases
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
private void cluclate()
{
Date date1,date2;
try {
String endTime;
Calendar c1 = Calendar.getInstance();
c1.add(Calendar.HOUR,12);
c1.add(Calendar.MINUTE,16);
c1.add(Calendar.SECOND,40);
SimpleDateFormat df1 = new SimpleDateFormat("HH:mm:ss", Locale.US);
String formattedTime1 = df1.format(c1.getTime());
date1 = df1.parse(formattedTime1);
Calendar c2 = Calendar.getInstance();
c2.add(Calendar.HOUR,12);
c2.add(Calendar.MINUTE,16);
c2.add(Calendar.SECOND,50);
SimpleDateFormat df2 = new SimpleDateFormat("HH:mm:ss",Locale.US);
String formattedTime2 = df2.format(c2.getTime());
date2 = df2.parse(formattedTime2);
long mills = date2.getTime() - date1.getTime();
int Hours = (int) (mills/(1000 * 60 * 60));
int Minuets = (int) (mills/(1000*60)) % 60;
int Seconds = (int) (mills/1000) % 60;
String hr = String.format("%02d", Hours);
String min = String.format("%02d", Minuets);
String sec = String.format("%02d", Seconds);
endTime = hr + ":" + min + ":" +sec; // updated value every1 second
Log.d("=============>>>>",endTime);
} catch (ParseException e) {
e.printStackTrace();
}
}