如何在Kotlin上绕过NetworkOnMainThreadException

jmt*_*t89 3 java android kotlin

嗨,我从kotlin开始,现在Android Studio 3.0支持它,但我不知道如何在另一个线程中进行简单的网络请求...

在java中很容易

new Thread(new Runnable() {
    @Override
    public void run() {
        //Do dome Network Request

        runOnUiThread(new Runnable() {
            @Override
            public void run() {
                //Update UI
            }
        });
    }
}).start();
Run Code Online (Sandbox Code Playgroud)

我知道我可以做AsyncTask和blablabla ...但我不想那样做.我想要一个简单的解决方案而无需创建额外的类和复杂的用例

这在Kotlin有可能吗?

Jam*_*ken 12

Kotlin提供了Java和Android SDK中所有相同的类和方法,因此您可以使用完全相同的东西.由于支持SAM构造函数等格式,格式更好一些.

Thread({
    //Do some Network Request

    runOnUiThread({
        //Update UI
    })
}).start()
Run Code Online (Sandbox Code Playgroud)