У меня есть «специальное» изображение и текст, который показывает текущий самый важный статус моего приложения.Этими двумя управляет второстепенная нить.Я публикую свои исполняемые файлы для изменения текста и изображения с помощью обработчика из основного интерфейса пользователя.
Но иногда работа не выполняется, но журнал показывает, что приложение переходит в метод.
Secound Thread
public class cWarningControl extends MainActivity implements Runnable {
String TAG = "cWarngin";
@Override
public void run() {
while (true) {
if (cGlobal_values.bBT_NOADAPTER) {
mainHandler.post(new Runnable() {
@Override
public void run() {
Warning_image.setImageResource(R.mipmap.warnung_bt_red);
Warning_text.setText(R.string.warning_BT_NO_Adapter);
}
});
}else
{
if (cGlobal_values.bBT_GenState_on)
{
if (cGlobal_values.bBT_ConState_connected)
{
mainHandler.post(new Runnable() {
@Override
public void run() {
Warning_image.setImageResource(R.mipmap.warnung_bt_green);
Warning_text.setText(R.string.warning_BT_ON_CON);
}
});
}
else {
mainHandler.post(new Runnable() {
@Override
public void run() {
Warning_image.setImageResource(R.mipmap.warnung_bt_yellow);
Warning_text.setText(R.string.warning_BT_ON_NOCON);
Log.d(TAG, "run: State on");
}
});
}
}
else
{
mainHandler.post(new Runnable() {
@Override
public void run() {
Warning_image.setImageResource(R.mipmap.warnung_bt_red);
Warning_text.setText(R.string.warning_BT_OFF);
Log.d(TAG, "run: State off");
}
});
}
}
sleep(1500);
}
}
}
MainThread
public Handler mainHandler = new Handler(Looper.getMainLooper());
Возможно ли, что иногда работа не выполняется?Как мне от этого избавиться?