Android Studio上的java Yelp API
我以前一直是这个网站的潜伏者,帮助我找到一些问题的答案,但我现在被困在这个网站上,无法找到最新的解决方案。我找到的最接近我问题的答案是Yelp API Android Integration和Yelp Integration in Android
我试着按照第二个链接中的步骤进行操作,但它们有点过时了。我已经注册了一个API,从github下载了jar文件并进行了同步,还制作了YelpAPI。java和TwoStepOAuth。java文件,并从YelpAPI中删除了main方法。我被困在搜索部分的第4步。我试图从为按钮创建的onClick方法中调用queryAPI方法
public void getRandom(View view) {
Intent intent = new Intent(this, SecondActivity.class);
startActivity(intent);
YelpAPI.YelpAPICLI yelpApiCli = new YelpAPI.YelpAPICLI();
new JCommander(yelpApiCli);
YelpAPI yelpApi = new YelpAPI(CONSUMER_KEY, CONSUMER_SECRET, TOKEN, TOKEN_SECRET);
try {
YelpAPI.queryAPI(yelpApi, yelpApiCli);
} catch (JSONException e) {
e.printStackTrace();
}
}
基本上我想做的是,当按下按钮时,我希望它进入第二个屏幕,显示我查询Yelp的内容。我还没做那部分,现在我只想从Yelp那里得到一个结果。请记住,我在安卓工作室是一个彻头彻尾的noob,至多在Java是一个中级
任何帮助都是非常感谢的,这似乎是一个非常简单的问题,但它花了我永远的时间来解决我自己
# 1 楼答案
您不能在android的主线程(UI线程)中执行诸如下载或图像加载之类的阻塞任务。阻止用户界面的时间不能超过5秒。如果您尝试阻止超过5秒,您的应用程序将停止工作并显示“不幸的是,您的应用程序已停止工作”,因为错误导致主线程上的工作过多。因此,您需要使用异步任务