protected Long doInBackground(String... address) {
while(true){
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
e.printStackTrace();
}
setProgress(100);
onProgressUpdate(getping(address[0]));
}
}
protected void onProgressUpdate(Long... values){
result.setText(String.valueOf(values[0]));
builder.setContentText(String.valueOf(values[0]));
notificationManager.notify(1,builder.build());
}
Этот блок отлично работает на Android Oreo и выше, но не может установить текст на любой версии ниже
LOG CAT: -
11-05 16: 18: 26.041 4720-4752 / com.pcartistofficial.pingtesterforgames E / AndroidRuntime: ИСКЛЮЧИТЕЛЬНОЕ ИСКЛЮЧЕНИЕ: AsyncTask # 1 Процесс: com.pcartistofficial.pingtesterforgames, PID: 4720 java.lang.RuntimeExack: произошла ошибка во время выполнения) на android.os.AsyncTask $ 3.done (AsyncTask.java:304) на java.util.concurrent.FutureTask.finishCompletion (FutureTask.java:355) на java.util.concurrent.FutureTask.setException (FutureTask.js)) в java.util.concurrent.FutureTask.run (FutureTask.java:242) в android.os.AsyncTask $ SerialExecutor $ 1.run (AsyncTask.java:231) в java.util.concurrent.ThreadPoolExecutor.RjoWecutor: 1112) в java.util.concurrent.ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor.java:587) в java.lang.Thread.run (Thread.java:818), вызванный: android.view.ViewRootImpl $ CalledFromWrongThreadExcepнация: только исходный поток, создавший иерархию представлений, может касаться его представлений. на android.view.ViewRootImpl.checkThread (ViewRootImpl.java:6357) на android.view.ViewRootImpl.invalidateChildInParent (ViewRootImpl.java:909) на android.view.ViewGroup.invalidateChild (View4690) jjView.invalidateInternal (View.java:11801) на android.view.View.invalidate (View.java:11765) на android.view.View.invalidate (View.java:11749) на android.widget.TextView.checkForRelayout (TextView.java: 6858) в android.widget.TextView.setText (TextView.java:4057) в android.widget.TextView.setText (TextView.java:3915) в android.widget.TextView.setText (TextView.java:3890)по адресу com.pcartistofficial.pingtesterforgames.MainActivity $ BackgroundTasker.onProgressUpdate (MainActivity.java:96) по адресу com.pcartistofficial.pingtesterforgames.MainActivity $ BackgroundTasker.doInBackground (MainActivity.java:90) по адресу com.pcartistFack.MackerFame.of(MainActivity.java:67) на android.os.AsyncTask $ 2.call (AsyncTask.java:292) на java.util.concurrent.FutureTask.run (FutureTask.java:237) в android.os.AsyncTask $ SerialExecutor $ 1.run (AsyncTask.java:231) в java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:11)concurrent.ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor.java:587) в java.lang.Thread.run (Thread.java:818)