0
Это мой java-файл, где я пытаюсь позвонить Json, но я не получаю никаких данных. Также я не получаю никаких ошибок, поэтому я не мог найти, где проблема.Не получать данные от JSON Call Android
Вот мой код и Json выглядит следующим образом:
[
{
"title": "Quest",
"description": "Description Quest",
"district": "District Quest";
}
]
И КОД:
public class Quests extends Fragment {
// Log tag
private static final String TAG = Quests.class.getSimpleName();
// Quest Json url
private static final String url = "http://my-ip-adress-of-computer/project/quests.txt";
private ProgressDialog pDialog;
private List<com.dusandimitrijevic.model.Quests> questList = new ArrayList<com.dusandimitrijevic.model.Quests>();
private ListView listView;
private QuestListAdapter adapter;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.quests, container, false);
pDialog = new ProgressDialog(getActivity());
// Showing progress dialog before making http request
pDialog.setMessage("Loading...");
pDialog.setCancelable(false);
pDialog.show();
listView = (ListView) rootView.findViewById(R.id.list);
adapter = new QuestListAdapter(getActivity(), questList);
listView.setAdapter(adapter);
fetchQuests();
return rootView;
}
private void fetchQuests() {
// Creating volley request obj
JsonArrayRequest questReq = new JsonArrayRequest(url,
new Response.Listener<JSONArray>() {
@Override
public void onResponse(JSONArray response) {
Log.d(TAG, response.toString());
hidePDialog();
// Parsing json
for (int i = 0; i < response.length(); i++) {
try {
JSONObject obj = response.getJSONObject(i);
com.dusandimitrijevic.model.Quests q = new com.dusandimitrijevic.model.Quests();
q.setTitle(obj.getString("title"));
q.setDescription(obj.getString("description"));
q.setDistrict(obj.getString("district"));
// adding quests to quest array
questList.add(q);
} catch (JSONException e) {
e.printStackTrace();
}
}
adapter.notifyDataSetChanged();
// stopping swipe refresh
//swipeRefreshLayout.setRefreshing(false);
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
VolleyLog.d(TAG, "Error: " + error.getMessage());
hidePDialog();
// stopping swipe refresh
//swipeRefreshLayout.setRefreshing(false);
}
});
// Adding request to request queue
AppController.getInstance().addToRequestQueue(questReq);
}
@Override
public void onDestroy() {
super.onDestroy();
hidePDialog();
}
private void hidePDialog() {
if (pDialog != null) {
pDialog.dismiss();
pDialog = null;
}
}
}
bro, whats that url, который вы используете! –
Я использую localhost для тестирования приложения –
Ссылка на URL работает. Я проверил это, но что-то не так в коде, и я не уверен, что. –