انجمن برنامه نویس

سوال : اشکال در فراخوانی json

شروع موضوع توسط 0212121 ‏18/2/18 در انجمن برنامه نویسی اندروید (Android)

گنجینه های
برنامه نویسی
فیلم های آموزشی
زبان های برنامه نویسی
فیلم های آموزشی
پروژه محور C#
فیلم های آموزشی
برنامه نویسی اندروید
فیلم های آموزشی
طراحی سایت
فیلم های آموزشی
برنامه نویسی پایه
گنجینه برنامه نویسی C# آموزش برنامه نویسی C سیستم مدیریت بانک آموزش اندروید - مقدماتی آموزش زبان HTML اصول و مبانی برنامه نویسی
گنجینه آموزش ASP .Net آموزش برنامه نویسی C++‎ پیاده سازی مدیریت آتلیه آموزش اندروید - تکمیلی آموزش زبان CSS آموزش الگوریتم و فلوچارت
گنجینه برنامه نویسی PHP آموزش برنامه نویسی C# پیاده سازی سیستم هتلداری آموزش اندروید - پیشرفته آموزش زبان Java Script آموزش تبدیل فلوچارت به کد
گنجینه آموزش طراحی وب آموزش برنامه نویسی جاوا شبیه سازی دستگاه عابربانک آموزش ساخت لیست ایمیل آموزش زبان jQury برنامه نویسی اسمال بیسیک
گنجینه برنامه نویسی متلب آموزش برنامه نویسی PHP پیاده سازی مدیریت آموزشگاه آموزش ساخت گالری تصاویر آموزش زبان XML آموزش برنامه نویسی اسمبلی
گنجینه برنامه نویسی اندروید آموزش برنامه نویسی پایتون پیاده سازی سیستم صدور بلیت آموزش کنترل ربات با اندروید آموزش طراحی Responsive طراحی سایت ویژه کودکان
گنجینه برنامه نویسی VB .Net آموزش برنامه نویسی اندروید پیاده سازی سیستم نوبت دهی آموزش ارتباط با دیتابیس سرور ساخت سایت خبری کدنویسی سریع با Emmet
گنجینه زبان های برنامه نویسی آموزش برنامه نویسی زبان R سیستم حسابداری و انبارداری زبان بیسیک فور اندروید (B4A) ساخت سایت فروشگاه آموزش کار با پایگاه داده
  1. 0212121
    karbar Rank

    تاریخ عضویت:
    ‏18/2/18
    ارسال ها:
    1
    تشکر شده:
    0
    امتیاز دستاورد:
    5
    جنسیت:
    مرد
    سلام

    من یک برنامه برای فراخوانی json از ووکامرس نوشتم که از کتابخانه volly و RecyclerView استفاده کردم و باتوابع json arrey و jsonobject اونها رو فراخوانی کردم اما بعد از اجذای برنامه فقط صفحه لودینگ میاد و بقیه اطلاعات رو لود نمیکنه نمیدونم مشکل از کجاست

    کد کامل اکتیویتی:



    package com.example.fresh.freshlandshop;

    import android.app.ProgressDialog;
    import android.support.v7.app.AppCompatActivity;
    import android.os.Bundle;
    import android.support.v7.widget.LinearLayoutManager;
    import android.support.v7.widget.RecyclerView;

    import com.android.volley.RequestQueue;
    import com.android.volley.Response;
    import com.android.volley.VolleyError;
    import com.android.volley.toolbox.JsonObjectRequest;
    import com.android.volley.toolbox.Volley;
    import org.json.JSONArray;
    import org.json.JSONException;
    import org.json.JSONObject;

    import java.util.ArrayList;
    import java.util.List;
    public class MainActivity extends AppCompatActivity {
    //Creating a List of superheroes
    private List<SuperHeroes> listSuperHeroes;
    //Creating Views
    private RecyclerView recyclerView;
    private RecyclerView.LayoutManager layoutManager;
    private RecyclerView.Adapter adapter;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    //Initializing Views
    recyclerView = (RecyclerView) findViewById(R.id.recyclerView);
    //Initializing our superheroes list
    listSuperHeroes = new ArrayList<>();
    //Calling method to get data
    getData();
    }
    //This method will get data from the web api
    private void getData(){
    //Showing a progress dialog
    final ProgressDialog loading = ProgressDialog.show(this,"در حال دریافت اطلاعات" ,"لطفا صبر کنید...",false,false);

    //Creating a json array request
    JsonObjectRequest jsonArrayRequest = new JsonObjectRequest(config.DATA_URL,
    new Response.Listener<JSONObject>() {
    @Override
    public void onResponse(JSONObject response) {
    //Dismissing progress dialog
    loading.dismiss();
    try {
    JSONArray obj_products =
    response.getJSONArray("products");
    parseData(response.getJSONArray("products"));
    }
    catch(Exception e)
    {
    }
    //calling method to parse json array
    }
    },
    new Response.ErrorListener() {
    @Override
    public void onErrorResponse(VolleyError error) {
    }
    });
    //Creating request queue
    RequestQueue requestQueue = Volley.newRequestQueue(this);
    //Adding request to the queue
    requestQueue.add(jsonArrayRequest);
    }
    //This method will parse json data
    private void parseData(JSONArray array){
    for(int i =0; i<array.length(); i++) {
    SuperHeroes superHero = new SuperHeroes();
    JSONObject json = null;
    try {
    json = array.getJSONObject(i);
    superHero.setName(json.getString(config.TAG_NAME));
    superHero.setRank(json.getString(config.TAG_RANK));

    superHero.setRealName(json.getString(config.TAG_REAL_NAME).toString() .replace("</p>","") .replace("</p>",""));
    JSONArray products = json.getJSONArray(config.TAG_IMAGE);
    String image_url="";
    for(int k=0;k<products.length();k++) {
    JSONObject new_json = products.getJSONObject(k);
    image_url = new_json.getString(config.TAG_IMAGE_URL);
    }
    superHero.setImageUrl(image_url);
    ArrayList<String> addList = new ArrayList<String>();
    JSONArray addArray = json.getJSONArray(config.TAG_IMAGE);
    int size = addArray.length();
    } catch (JSONException e) {
    e.printStackTrace();
    }
    listSuperHeroes.add(superHero);
    }
    //Finally initializing our adapter
    adapter = new cardadapter(listSuperHeroes, this);
    recyclerView.setLayoutManager(new LinearLayoutManager(MainActivity.this));
    recyclerView.setHasFixedSize(true);
    //Adding adapter to recyclerview
    recyclerView.setAdapter(adapter);
    }
    }