[英]Jsoup connection problems with Android application
所以我在我的项目中使用 Jsoup。 后端代码在 output 菜单上运行良好,但是当我尝试将其放在 android 工作室时,它无法正常工作。 我完美地导入了库,代码中没有错误。 我还使用
<uses-permission android:name="android.permission.INTERNET" />
所以我想制作一个新的迷你项目。 所以现在我的代码看起来像
'''
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
public class MainActivity extends AppCompatActivity {
public Button button;
public TextView textview;
public EditText edittext;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textview = (TextView) findViewById(R.id.textView);
button = (Button) findViewById(R.id.button);
edittext = (EditText) findViewById(R.id.editText);
View.OnClickListener search = new View.OnClickListener() {
@Override
public void onClick(View v) {
try {
Document doc = Jsoup.connect("https://www.flipkart.com").get();
String title = doc.text();
textview.append(title);
} catch (Exception e){
}
}
};
button.setOnClickListener(search);
}
} '''
但是文本视图中没有打印任何内容。 请告诉我错误。
你可以试试这个:
Executor mExecutor = Executors.newSingleThreadExecutor();
Tasks.call(mExecutor, new Callable<String>() {
@Override
public String call() throws Exception {
Document doc = Jsoup.connect("https://www.flipkart.com").get();
String title = doc.text();
return title;
}
}).continueWith(new Continuation<String, Object>() {
@Override
public Object then(@NonNull Task<String> task) throws Exception {
textview.append( task.getResult());
return null;
}
});
另一方面,使用 Executors.newSingleThreadExecutor() 允许您提交多个任务。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.