Как создать URL для отображения всех видео в плейлисте с YouTube - PullRequest
0 голосов
/ 02 ноября 2019

Я изменил настройки своего канала на YouTube, чтобы разрешить доступ ко всем видео. Но список видео все еще не отображается в моем приложении, я не знаю, почему он не работает.

Мой URL выглядит следующим образом: <a href="https://www.googleapis.com/youtube/v3/playlistitems?part=snippet&channelId=[My-channel-id]&key=[YOUR_API_KEY]" rel="nofollow noreferrer">https://www.googleapis.com/youtube/v3/playlistitems?part=snippet&channelId=[My-channel-id]&key=[YOUR_API_KEY]</a>

Как я могу заставить мой код работать так, чтобы он отображал все мои видео?

Пожалуйста, предоставьте пошаговое руководство.

Это мой код активности:

public class HOME extends Fragment {
    String API_KEY = "Api Key";

    ArrayList<VideoDetails> videoDetailsArrayList ;

    String url = "https://www.googleapis.com/youtube/v3/search?part=snippet&channelId=[My cennal Id]&key=AIzaSyABfsdiwaqor3tAhL3e1fgnwG13HahA0wo";

    MyCustomAdapter myCustomAdapter;

    ListView listView;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        // Inflate the layout for this fragment
        View view =  inflater.inflate(R.layout.fragment_home, container, false);

        listView = view.findViewById(R.id.list_view);
        myCustomAdapter = new MyCustomAdapter(getActivity(),videoDetailsArrayList);

        videoDetailsArrayList = new ArrayList<>();

        displayVideos();
        return view;
    }

    private void displayVideos() {

        RequestQueue requestQueue = Volley.newRequestQueue(getContext());
        StringRequest stringRequest = new StringRequest(Request.Method.GET, url, new Response.Listener<String>() {
            @Override
            public void onResponse(String response) {

                try {
                    JSONObject jsonObject = new JSONObject(response);
                    JSONArray jsonArray = jsonObject.getJSONArray("items");

                    for(int i =0; i<jsonArray.length();i++)
                    {
                        JSONObject jsonObject1 = jsonArray.getJSONObject(i);
                        JSONObject jsonVideoId = jsonObject1.getJSONObject("id");
                        JSONObject jsonObjectSnippet = jsonObject1.getJSONObject("snippet");
                        JSONObject jsonObjectdefault = jsonObjectSnippet.getJSONObject("thumbnails").getJSONObject("medium");

                        String video_id = jsonVideoId.getString("videoId");

                        VideoDetails vd = new VideoDetails();

                        vd.setVideoId(video_id);
                        vd.setTitle(jsonObjectSnippet.getString("title"));
                        vd.setDescription(jsonObjectSnippet.getString("description"));
                        vd.setUrl(jsonObjectdefault.getString("url"));

                        videoDetailsArrayList.add(vd);
                    }
                    listView.setAdapter(myCustomAdapter);
                    myCustomAdapter.notifyDataSetChanged();

                }catch (JSONException e){
                    e.printStackTrace();
                }
            }
        }, new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError error) {
 Toast.makeText(getActivity(),error.getMessage(),Toast.LENGTH_SHORT).show();
            }
        }
        );
        requestQueue.add(stringRequest);
    }
}
...