sdl_java_suite icon indicating copy to clipboard operation
sdl_java_suite copied to clipboard

Remove use of deprecated AsyncTask

Open RHenigan opened this issue 4 years ago • 0 comments

Bug Report

As of Android SDK 30 AsyncTask was deprecated. HttpRequestTask and RouterServiceValidator.FindRouterTask extend AsyncTask.

See Here: https://developer.android.com/reference/android/os/AsyncTask

Expected Behavior

The library does not use deprecated classes or methods from the Android API

Observed Behavior

The library uses the deprecated AsyncTask

OS & Version Information
  • Android Version: SDK 30
  • SDL Android Version: 5.1.1
Test Case, Sample Code, and / or Example App

The recommended alternative is to use executors: https://developer.android.com/reference/java/util/concurrent/Executors

ExecutorService executor = Executors.newSingleThreadExecutor();
handler = new Handler(Looper.getMainLooper());
    executor.execute(new Runnable() {
        //Run background code

        handler.post(new Runnable() {
            @Override
                public void run() {
                    //Run UI code
                }
        }
}

RHenigan avatar Aug 25 '21 17:08 RHenigan