Я правильно понимаю, что вы хотите?
В вашем пользовательском интерфейсе activitiy есть две полосы прогресса, которые должны обновляться в зависимости от
- проверка обновлений
- процесс синхронизации
, тогда вы должны создать handler
в своем пользовательском интерфейсе и использовать два отдельных потока, один для проверки обновлений, а другой для проверки синхронизации
Оба отправляют информацию о своем прогрессе в основной поток, например:
mHandler.obtainMessage(Main_screen.MESSAGE_PGROGRESS_CHANGE_UPDATE, state, -1)
.sendToTarget();
в другой у вас есть
mHandler.obtainMessage(Main_screen.MESSAGE_PGROGRESS_CHANGE_SYNCHRINIZATION, state, -1)
.sendToTarget();
В вашем пользовательском интерфейсе обработчик выглядит следующим образом ...
private final Handler mHandler = new Handler() {
@Override
public void handleMessage(Message msg) {
if (DEBUG)
Log.i(this.getClass().getSimpleName(),
"-> "
+ Thread.currentThread().getStackTrace()[2]
.getMethodName());
switch (msg.what) {
case MESSAGE_PGROGRESS_CHANGE_UPDATE:
if (DEBUG)
Log.i(this.getClass().getSimpleName(),
" MESSAGE_PGROGRESS_CHANGE_UPDATE: " + msg.arg1);
// do your update of progressbar or whatever here
break;
case MESSAGE_PGROGRESS_CHANGE_SYNCHRINIZATION:
if (DEBUG)
Log.i(this.getClass().getSimpleName(),
" MESSAGE_PGROGRESS_CHANGE_SYNCHRINIZATION: " + msg.arg1);
// do your update of progressbar or whatever here
break;