使用android java异步任务下载中的webcontent时出现问题
我第一次使用java在android studio中工作。我创建此代码用于下载web内容,并使用Asynctask,但DownloadTask类不返回结果。我不知道问题出在哪里。并在Logcat中显示以下消息 D/NetworkSecurityConfig:未指定网络安全配置,使用平台默认设置 I/合子:等待阻止GC配置文件保存程序 I/zygote:WaitForgCTO在HeapTrim上完成阻塞的ProfileSaver 11.085ms 主要活动使用android java异步任务下载中的webcontent时出现问题,java,android-studio,Java,Android Studio,我第一次使用java在android studio中工作。我创建此代码用于下载web内容,并使用Asynctask,但DownloadTask类不返回结果。我不知道问题出在哪里。并在Logcat中显示以下消息 D/NetworkSecurityConfig:未指定网络安全配置,使用平台默认设置 I/合子:等待阻止GC配置文件保存程序 I/zygote:WaitForgCTO在HeapTrim上完成阻塞的ProfileSaver 11.085ms 主要活动 public class Downloa
public class DownloadTask extends AsyncTask<String, Void, String> {
@Override
protected String doInBackground(String... urls) {
String dataResult = "";
URL url;
HttpsURLConnection urlConnection = null;
try {
url = new URL(urls[0]);
urlConnection = (HttpsURLConnection) url.openConnection();
InputStream in = urlConnection.getInputStream();
InputStreamReader reader = new InputStreamReader(in);
int data = reader.read();
while (data != -1) {
char current = (char) data;
dataResult += current;
data = reader.read();
}
return dataResult;
} catch (Exception e) {
e.printStackTrace();
return "failed";
}
}
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
DownloadTask tasks = new DownloadTask();
String result = null;
try {
result = tasks.execute("https://www.imdb.com/list/ls052283250/").get();
Log.i("downloaded The URL",result);
} catch (Exception e) {
e.printStackTrace();
}
}
公共类下载任务扩展了异步任务{
@凌驾
受保护的字符串doInBackground(字符串…URL){
字符串dataResult=“”;
网址;
HttpsURLConnection urlConnection=null;
试一试{
url=新url(url[0]);
urlConnection=(HttpsURLConnection)url.openConnection();
InputStream in=urlConnection.getInputStream();
InputStreamReader reader=新的InputStreamReader(in);
int data=reader.read();
while(数据!=-1){
当前字符=(字符)数据;
数据结果+=当前;
data=reader.read();
}
返回数据结果;
}捕获(例外e){
e、 printStackTrace();
返回“失败”;
}
}
}
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
DownloadTask tasks=新建DownloadTask();
字符串结果=null;
试一试{
结果=任务。执行(“https://www.imdb.com/list/ls052283250/).get();
Log.i(“下载URL”,结果);
}捕获(例外e){
e、 printStackTrace();
}
}
虽然这是一个重复的问题,但我会回答这个问题。
我也面临这个问题(不再是问题)。这是android studio逐个字符处理响应的等待时间
我建议您使用BufferedReader以加快阅读速度