Я изменил настройки своего канала на 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);
}
}