Android的jsoup方法,在Android中使用Jsoup
我在android应用程序中有一个简单的代码,在其中使用了一个简单的jsoup代码来连接到链接并获得在线电台的标题.但是,当我单击“播放”按钮时,我的应用程序崩溃退出.这是我的onClick动作:
btnPlay.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
progressDialog.show();
Document doc = null;
try {
doc = Jsoup.connect("http://info.radiostyle.ru/inc/getinfo.php?getcurentsong=20383&mount=lezgifm").get();
String s = doc.body().text();
System.out.println(s);
lblMusicName.setText(s);
} catch (IOException e) {
e.printStackTrace();
}
new Thread(new Runnable() {
@Override
public void run() {
if (radioBtn128.isChecked())
url = "http://stream4.radiostyle.ru:8004/lezgifm";
else if (radioBtn32.isChecked())
url = "http://stream0.radiostyle.ru:8000/lezgifm";
setStream(url);
isPlaying = true;
progressDialog.dismiss();
}
}).start();
}
});
当我尝试调试时,调试器在Document doc = null point中循环.怎么了?
更新:
StackTrace异常:
E/AndroidRuntime(880): FATAL EXCEPTION: main
E/AndroidRuntime(880): android.os.NetworkOnMainThreadException
E/AndroidRuntime(880): at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1117)
E/AndroidRuntime(880): at java.net.InetAddress.lookupHostByName(InetAddress.java:385)
E/AndroidRuntime(880): at java.net.InetAddress.getAllByNameImpl(InetAddress.java:236)
E/AndroidRuntime(880): at java.net.InetAddress.getAllByName(InetAddress.java:214)
E/AndroidRuntime(880): at libcore.net.http.HttpConnection.(HttpConnection.java:70)
E/AndroidRuntime(880): at libcore.net.http.HttpConnection.(HttpConnection.java:50)
E/AndroidRuntime(880): at libcore.net.http.HttpConnection$Address.connect(HttpConnection.java:340)
E/AndroidRuntime(880): at libcore.net.http.HttpConnectionPool.get(HttpConnectionPool.java:87)
E/AndroidRuntime(880): at libcore.net.http.HttpConnection.connect(HttpConnection.java:128)
E/AndroidRuntime(880): at libcore.net.http.HttpEngine.openSocketConnection(HttpEngine.java:316)
E/AndroidRuntime(880): at libcore.net.http.HttpEngine.connect(HttpEngine.java:311)
E/AndroidRuntime(880): at libcore.net.http.HttpEngine.sendSocketRequest(HttpEngine.java:290)
E/AndroidRuntime(880): at libcore.net.http.HttpEngine.sendRequest(HttpEngine.java:240)
E/AndroidRuntime(880): at libcore.net.http.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:81)
E/AndroidRuntime(880): at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:425)
E/AndroidRuntime(880): at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:410)
E/AndroidRuntime(880): at org.jsoup.helper.HttpConnection.execute(HttpConnection.java:164)
E/AndroidRuntime(880): at org.jsoup.helper.HttpConnection.get(HttpConnection.java:153)
E/AndroidRuntime(880): at com.lezgifm.radio.MainActivity$1.onClick(MainActivity.java:109)
E/AndroidRuntime(880): at android.view.View.performClick(View.java:4202)
E/AndroidRuntime(880): at android.view.View$PerformClick.run(View.java:17340)
E/AndroidRuntime(880): at android.os.Handler.handleCallback(Handler.java:725)
E/AndroidRuntime(880): at android.os.Handler.dispatchMessage(Handler.java:92)
E/AndroidRuntime(880): at android.os.Looper.loop(Looper.java:137)
E/AndroidRuntime(880): at android.app.ActivityThread.main(ActivityThread.java:5039)
E/AndroidRuntime(880): at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime(880): at java.lang.reflect.Method.invoke(Method.java:511)
E/AndroidRuntime(880): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
E/AndroidRuntime(880): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
E/AndroidRuntime(880): at dalvik.system.NativeStart.main(Native Method)
Android的jsoup方法,在Android中使用Jsoup相关推荐
- [转]JS调用Android里面的方法,Android调用JS里面的方法
FROM : http://blog.csdn.net/hj563308597/article/details/45197709 Android WebView 在公司Android的开发过程中遇到一 ...
- android动画制作方法,在Android中制作动画的推荐方法
我在网上搜索了更多有关在Android中为角色设置动画的信息,但并没有完全理解它.我在这里问,也许您可以给我一些建议或提示,以实现最佳效果. 情境 想象一下5个绘制的字符(比方说5个人头).我需要 ...
- android 同步执行方法吗,Android异步方法以同步方式实现
Android强制异步转同步方法,供大家参考,具体内容如下 Android系统中规定耗时任务需要在异步线程中进行,特别是网络请求必须在异步线程中进行否则会抛出NetworkOnMainThreadEx ...
- android apk 签名方法,[转载]Android apk签名的两种方法
为了保证每个应用程序开发商合法ID,防止部分开放商可能通过使用相同的Package Name来混淆替换已经安装的程序,我们需要对我们发布的APK文件进行唯一签名,保证我们每次发布的版本的一致性(如自动 ...
- android 连续调用方法是,android – SwitchPreferences多次调用onPreferenceChange()方法
这是由于SwitchPreference实现中的错误. 调用onPreferenceChange回调: >第一次通过TwoStatePreference.onClick方法,它只更新Shared ...
- android消息提示方法自定义,Android自定义消息提示容器
自定义消息提示容器.png 效果 效果图 实现逻辑 知识点 1.dispatchDraw(Canvas canvas)绘制子View,在这里绘制可以保证在其子View的上层 2.TextPaint默认 ...
- android 颜色渐变方法,在android上渐变按钮颜色变化
我想逐渐改变按钮颜色,点击它之后.我的意思是,按钮必须具有,例如下一组颜色:默认情况下 – 深蓝色,然后是深蓝色,然后是蓝色,然后是浅蓝色,最后是最亮的蓝色.这只是一个例子,我真的想在循环中更改按钮颜 ...
- java jsoup html_使用JAVA中的JSOUP从HTML中提取CSS样式
如果样式嵌入在Element中,则只需使用.attr("style"). JSoup不是Html渲染器,它只是一个HTML解析器,因此您必须从检索到的< style>中 ...
- 探索 Android 多线程优化方法
前言 1. 基本介绍 在我学习 Android 多线程优化方法的过程中,发现我对多线程优化的了解太片面. 写这篇文章的目的是完善我对 Android 多线程优化方法的认识,分享这篇文章的目的是希望大家 ...
- android导航条高度修改,Android中修改TabLayout底部导航条Indicator长短的方法
前言 对于Tablayout相信大家都不陌生,在开发中使用的应该很频繁了,但是底部导航条长短是固定死的,需要自己来改动长短,找了半天没找着方法,看了下官方建议,可以通过映射来修改自己想要的长短,其实也 ...
最新文章
- DivCo: Diverse Conditional Image Synthesis via Contrastive Generative Adversarial Network
- qq动态页面变方格_微信更新“分组显示、群管理”等功能,网友:都是QQ玩剩的姿势...
- Dubbo 和 HSF 在阿里巴巴的实践:携手走向下一代云原生微服务
- 【Linux系统编程】fork() 函数详解
- python有趣的简单代码_简单几步,100行代码用Python画一个蝙蝠侠的logo
- 协同工作php,PHPOA:灵活、高效、协同,让企业高效运转
- windows10中屏幕键盘 vs 触摸键盘
- day39-Spring 14-Spring的JDBC模板:DBCP连接池配置
- 车牌分割python_Python实现车牌定位及分割
- 基于Matlab的车牌号识别
- arduino入门(一)arduino下载安装,炒鸡详解
- C#对接中国移动短信接口
- 96PIN直插DIP千兆四口网络变压器 千兆交换机路由器网络滤波器
- 今天属于李志-梵高先生
- 为什么有些大公司的技术弱爆了?
- 【Pytorch】计算矩阵中向量之间的两两相似性
- 复选框全部选中/全部取消
- 【算法模板】轻松学会KMP算法
- BZOJ 3698: XWW的难题|有上下界的网络流之最大流
- 昆明理工大学计算机学院研究生录取分数线,2021昆明理工大学研究生分数线一览表(含2019-2020历年复试)...