gpt4 book ai didi

java - 使用单独的线程发送请求

转载 作者:行者123 更新时间:2023-11-30 02:00:14 25 4
gpt4 key购买 nike

我正在尝试从我的 Android 应用程序向 Yelp 发送 API 请求。我从这里获得了用 Java 发送请求的示例代码 https://github.com/Yelp/yelp-api/tree/master/v2/java

当我运行存储库中提供的脚本时,它工作正常,但是,当我将代码添加到我的 Android 应用程序时,出现错误。

这是我的 Android 应用程序代码:

protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

YelpAPI yelp = new YelpAPI(
getString(R.string.yelp_consumer_key),
getString(R.string.yelp_consumer_secret),
getString(R.string.yelp_token),
getString(R.string.yelp_token_secret));

String result = yelp.searchForBusinessesByLocation("bar", "San Jose, CA");
System.out.println(result);
}

和堆栈跟踪:

--------- beginning of crash
07-23 12:50:23.848 E/AndroidRuntime﹕ FATAL EXCEPTION: main
Process: PID: 2328
java.lang.RuntimeException: Unable to start activity ComponentInfo{.MainActivity}: org.scribe.exceptions.OAuthConnectionException: There was a problem while creating a connection to the remote service.
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2298)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2360)
at android.app.ActivityThread.access$800(ActivityThread.java:144) ...

在网上发现了类似的问题,我想是因为无法使用主线程发送请求。如何使用单独的线程发送请求?

最佳答案

如果你只是想创建一个新线程,你可以这样做:

 new Thread(new Runnable() {
public void run() {
YelpAPI yelp = new YelpAPI(
getString(R.string.yelp_consumer_key),
getString(R.string.yelp_consumer_secret),
getString(R.string.yelp_token),
getString(R.string.yelp_token_secret));

String result = yelp.searchForBusinessesByLocation("bar", "San Jose, CA");
System.out.println(result);
}
}).start();

有关 Android 线程的信息可在以下位置找到: http://developer.android.com/guide/components/processes-and-threads.html

关于java - 使用单独的线程发送请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31596918/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com