У меня есть этот код внутри моей асинхронной задачи:
@Override
protected void onPreExecute() {
waitDialog = new ProgressDialog(context);
waitDialog.setTitle(R.string.wait_title);
waitDialog.setMessage(context.getString(R.string.wait_body));
waitDialog.setIndeterminate(true);
waitDialog.show();
}
@Override
protected Boolean doInBackground(Void... unused) {
Intent serviceIntent = new Intent(context, PublisherService.class);
saveSettings(false);
startService(serviceIntent);
return serviceIsRunning();
}
Появляется диалоговое окно, но пока запускается моя служба (а это занимает несколько секунд), диалог выполнения заморожен. Если я использую простой SystemClock.sleep()
внутри моего doInBackground()
звонка, он работает нормально.
Может кто-нибудь сказать мне, почему это происходит и как решить проблему?
Спасибо