К сожалению, «имя приложения» остановлено из-за библиотеки Jsoup

Я добавил библиотеку Jsoup из: Файл> Структура проекта> Зависимости Когда я написал этот код:

val dockhalij = Jsoup.connect("http://khalikmusic.org").get() 

мое приложение будет скомпилировано правильно, но когда я проверю его на своем устройстве (Galaxy Grand Duos), будет закрыто и покажут сообщение. К сожалению, «имя приложения» остановлено.

Без этой строки мое приложение работает правильно, но я не могу использовать Jsoup Library.

logcat:

 08-29 18:09:39.188 31871-31871/? E/AndroidRuntime: FATAL EXCEPTION: main java.lang.RuntimeException: Unable to start activity ComponentInfo{ir.bostanu.jelvilmusic/ir.bostanu.jelvilmusic.MainActivity}: android.os.NetworkOnMainThreadException at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2245) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2299) at android.app.ActivityThread.access$700(ActivityThread.java:150) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1280) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:137) at android.app.ActivityThread.main(ActivityThread.java:5283) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:511) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1102) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:869) at dalvik.system.NativeStart.main(Native Method) Caused by: android.os.NetworkOnMainThreadException at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1128) at java.net.InetAddress.lookupHostByName(InetAddress.java:385) at java.net.InetAddress.getAllByNameImpl(InetAddress.java:236) at java.net.InetAddress.getAllByName(InetAddress.java:214) at libcore.net.http.HttpConnection.<init>(HttpConnection.java:70) at libcore.net.http.HttpConnection.<init>(HttpConnection.java:50) at libcore.net.http.HttpConnection$Address.connect(HttpConnection.java:340) at libcore.net.http.HttpConnectionPool.get(HttpConnectionPool.java:87) at libcore.net.http.HttpConnection.connect(HttpConnection.java:128) at libcore.net.http.HttpEngine.openSocketConnection(HttpEngine.java:316) at libcore.net.http.HttpEngine.connect(HttpEngine.java:311) at libcore.net.http.HttpEngine.sendSocketRequest(HttpEngine.java:290) at libcore.net.http.HttpEngine.sendRequest(HttpEngine.java:240) at libcore.net.http.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:81) at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:652) at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:629) at org.jsoup.helper.HttpConnection.execute(HttpConnection.java:261) at org.jsoup.helper.HttpConnection.get(HttpConnection.java:250) at ir.bostanu.jelvilmusic.MainActivity.onCreate(MainActivity.kt:49) at android.app.Activity.performCreate(Activity.java:5283) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1097) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2209) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2299) at android.app.ActivityThread.access$700(ActivityThread.java:150) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1280) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:137) at android.app.ActivityThread.main(ActivityThread.java:5283) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:511) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1102) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:869) at dalvik.system.NativeStart.main(Native Method) 

Когда я добавляю библиотеки с файлом> структура проекта> Зависимости, библиотеки не работают для меня (всегда), я не знаю, почему

    Это связано с тем, что вы выполняете сетевую операцию в основном потоке, попробуйте следующее:

     Thread threadJSoup = new Thread(new Runnable() { @Override public void run() { try { val dockhalij = Jsoup.connect("http://khalikmusic.org").get(); } catch (Exception e) { e.printStackTrace(); } } }); threadJSoup.start(); 

    См. Сообщение Как исправить android.os.NetworkOnMainThreadException?

    Там объясняется, что вам не разрешено выполнять сетевые операции в основном потоке, и кажется, что вы выполняете эту строку

      val dockhalij = Jsoup.connect("http://khalikmusic.org").get() 

    на основной нити.

    Intereting Posts
    RecyclerView анимация элемента, onAnimationFinished, но не onAnimationStarted. Зачем? RxJava: Отменить подписку async, наблюдаемую из другого асинхронного производства Как прикрепить элемент HTML или DocumentFragment к DOM? Android Studio Version 3.0 Канальные каналы, не предоставляющие библиотеки поддержки Spring WebFlux: разрешен только один абонент Настройка проекта kotlin с градиентом Не удается открыть проект студии Android после установки kotlin Дооснащение 2 Длина содержимого RequestBody больше, чем размер файла Тестирование блоков Kotlin coroutines с использованием mockito Ошибка Dagger2: Kotlin: Неразрешенная ссылка: DaggerSOMETHINGComponent Как получить многомерный примитивный класс массива в котлин? Передача экземпляра объекта между двумя действиями в Котлине Перехват метода перегрузки, полностью переопределяющий метод Могу ли я ленить инициализировать значение в зависимости от конструктора? Кинжал и Котлин. Кинжал не генерирует классы компонентов