Таким образом, подключение моего эмулятора Android к обычному онлайн API работает, но не с моим локальным API (который также возвращает файл JSON).
Странная вещь заключается в том, что открытие localhost (http://10.0.2.2:8000/api/person) в веб-браузере эмуляторов возвращает веб-страницу с помощью json. Но в приведенном ниже коде это происходит.
В приведенном ниже коде он всегда выполняет onErrorResponse (). Кто-нибудь знает, что я мог просмотреть?
Спасибо.
Я пытался отключить брандмауэр и другие IP-адреса, но безрезультатно.
MY MANIFEST
uses-permission android:name="android.permission.INTERNET"
uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"
-----------------------------------------------------------------------------
EXERCISE.JAVA
NetworkManager.getInstance(this).getRequest("http://10.0.2.2:8000/api/person", new VolleyCallBack() {
@Override
public void onSucces(String result) {
Gson gson = new Gson();
Civilization c = gson.fromJson(result, Civilization.class);
-----------------------------------------------------------------------------
NETWORK MANAGAR.JAVA
public void getRequest(String prefixUrl, final VolleyCallBack volleyCallBack){
StringRequest stringRequest = new StringRequest(Request.Method.GET, prefixUrl, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
volleyCallBack.onSucces(response);
}
}, new Response.ErrorListener(){
@Override
public void onErrorResponse(VolleyError error) {
Log.d("wrong", "Something went wrong");
}
});
requestQueue.add(stringRequest);
}