Android JSON не оценивай for

Хорошие, я рассказываю вам, у меня есть проблема после того, как извлекаю info API в app Android. Когда я parseando JSON, он говорит мне: "Не оценивай for movies" в этом случае.

Я прикрепляю вас код посмотрим вы можете бросать мне руку. Случай состоит в том, что этот же самый код я функционирует хорошо для других API's с той же структурой, так что я свожу с ума себя немного. Также я смотрел другие post stack так на английском как на испанском языке, но ни одна не подала меня.

Здесь код:

 protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_recommendations);
    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
    setSupportActionBar(toolbar);
    RequestQueue queue = Volley.newRequestQueue(this);
    String url ="http://www.myapifilms.com/imdb/search?" +
            "token=apiKey&format=json&count=5";
    JsonObjectRequest request = new JsonObjectRequest(Request.Method.GET,
            url, null, new Response.Listener<JSONObject>() {
            @Override
            public void onResponse(JSONObject response) {
                try {
                    //JSONObject result = new JSONObject(response);
                    JSONArray arrayResults = response.getJSONArray("movies");
                    for(int i=0;i<arrayResults.length();i++) {
                        JSONObject object = arrayResults.getJSONObject(i);
                        String title = object.getString("title");
                        Log.v("TITULO: ", title);
                        String year = object.getString("year");
                        String runtime = object.getString("runtime");
                        String urlPoster = object.getString("urlPoster");
                        Log.v("POSTER: ", urlPoster);
                        String simplePlot = object.getString("simplePlot");
                        String rating = object.getString("rating");
                        items.add(new Movies(title, year, runtime, urlPoster, simplePlot, rating));
                        adapter.notifyDataSetChanged();
                    }
                } catch (JSONException e) {
                    e.printStackTrace();
                    Toast.makeText(Recommendations.this, "JSON Error", Toast.LENGTH_LONG).show();
                }
            }
        }, new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError error) {
                Toast.makeText(Recommendations.this, "Volley Error", Toast.LENGTH_SHORT).show();
            }
        });
    queue.add(request);

    recycler = (RecyclerView) findViewById(R.id.reciclador);
    recycler.setHasFixedSize(true);

    lManager = new LinearLayoutManager(this);
    recycler.setLayoutManager(lManager);
    adapter = new MoviesAdapter(items);
    recycler.setAdapter(adapter);
}

Здесь log debugger:

response = {JSONObject@4498} "{ он "восходит": { {movies": [{ "title": "Бэтмен v Superman: Дон of Justice", "originalTitle":" ", "year": "2016", "releaseDate": "20160325", "directors": [{ "ямс": "Зак Снайдер", "пойдите": "nm0811583" }], "writers": [{ "ямс": "Крис Террио", "пойдите": "nm0006516" },{ {ямс": "Давид С. Гойер", "пойдите": "nm0333060" }], "runtime": "151 min", "urlPoster": "http://ia.media-imdb.com/images/M/MV5BNTE5NzU3MTYzOF5BMl5BanBnXkFtZTgwNTM5NjQxODE@._V1_UY268_CR0,0,182,268_AL_.jpg", "countries": ["Используй"], "languages": ["English"], "genres": ["Action", "Adventure", "Fantasy", "Sci-Fi"], "plot": "Общий Following his titanic struggle against Сод, Метрополия - been razed to the ground and спорный Superman is the most фигурировал in the world. While for many я существую is still an emblem of hope, в growing number of people consider him в threat to humanity, seeking justice for the чау-чау я существую - brought to Earth. Эксперт far эксперт Брюс Уэйн is concerned, Superman is clearly в danger to society. Я существую fears for the future of the world with such в reckless power left ungoverne"

e = {JSONException@4508} "org.json. JSONException: Не оценивайте for movies"

3
задан 12.04.2016, 20:11
1 ответ

Стой, решенный, я нарушал объект восходит:

try{
    //AQUÍ he añadido este código y listo.
    JSONObject data = response.getJSONObject("data");
    JSONArray arrayResults = response.getJSONArray("movies");
    for(int i=0;i<arrayResults.length();i++) {
    ...
...
3
ответ дан 24.11.2019, 14:36

Теги

Похожие вопросы