问题描述
MainActivity中使用以下代码:
StringBuilder stringBuilder = new StringBuilder();
Cache cache;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
buttonDiscard = findViewById(R.id.buttonDiscard);
RequestQueue requestQueue;
cache = new DiskBasedCache(getCacheDir(),1024 * 1024); // 1MB cap
Network network = new BasicNetwork(new HurlStack());
requestQueue = new RequestQueue(cache,network);
requestQueue.start();
String url ="https://www.themealdb.com/api/json/v1/1/random.php";
StringRequest stringRequest = new StringRequest(Request.Method.GET,url,stringBuilder::append,error -> System.out.println("Error occurred"));
requestQueue.add(stringRequest);
}
public void handleDiscardClick(View view){
System.out.println(stringBuilder);
}
我面临的问题是,每次从url单击按钮都会收到相同的字符串响应,该响应以json格式提供随机进餐。我可以获得不同字符串的唯一方法是每次重新启动android应用程序,这绝对是不好的。我尝试在按钮功能内移动网络代码,但仍收到相同的响应。如果有人能告诉我如何在每次单击按钮时获得不同的响应,我将不胜感激。 (对不起,我是android联网新手)
解决方法
我最终修改了整个代码。我在另一个类中编写了以下代码,效果很好:
df