Я хочу получить данные из нескольких стандартных данных JSON, но я знаю, как получить только один за раз.Я не могу найти способ получить несколько.Это работает, если я запрашиваю только AAPPL, но нет, если я запрашиваю также FB
Больше информации об API, от которого я получаю данные: https://financialmodelingprep.com/developer/docs#Realtime-Stock-Price
Я пытался добавить больше акций finalString stockID = "AAPL, FB";
В браузере отображаются данные https://financialmodelingprep.com/api/company/price/AAPL,FB?datatype=json, но не в приложении.
public class MainActivity extends AppCompatActivity {
ListView textView;
ArrayList<String> stocks;//is a resizable array
ArrayAdapter<String> adapter; //Returns a view for each object in a collection of data objects you provide
RequestQueue queue; //Cola peticiones volley
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textView = findViewById(R.id.textView);
queue = Volley.newRequestQueue(this); //Creamos una requestqueue para que gestione hilos, peticiones y demas.
stocks = new ArrayList<>();
adapter = new ArrayAdapter(this, android.R.layout.simple_list_item_1, stocks); //Pasing the context, the row layout and the resource?
textView.setAdapter(adapter); //Setting to the listview the arrayadapter that returns the view from the arraylist
addstock();
}
//TODO: add the rest of the stocks
private void addstock() {
final String stockID = "AAPL";
final String stockName = "Apple";
String url = "https://financialmodelingprep.com/api/company/price/" +stockID+"?datatype=json";
//Making the request
JsonObjectRequest jsonObjectRequest = new JsonObjectRequest
(Request.Method.GET, url, null, new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
try{
JSONObject value = response.getJSONObject(stockID);
String price = value.getString("price");
String Linestock = stockName+ ":"+price+"$";
stocks.add(Linestock);//Adding it to the arraylist
adapter.notifyDataSetChanged(); //And to the view
} catch (Exception e){
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
// TODO: Handle error
}
});
queue.add(jsonObjectRequest);
}
}