2017-11-23 2 views
1

Ich versuche, die Details eines YouTube-Videos über seine ID zu finden (Beispiel -> yb7E4lQIaZI). Ich habe gelesen, dass wir, wenn wir nur die Details wollen, den api_key von der Entwicklerkonsole aus verwenden können. Wenn wir Vorgänge wie das Hochladen eines Videos durchführen möchten, müssen wir oauth verwenden. Ich möchte nur mit dem ersten Fall gehen. Ich brauche nur die Details des Videos wie Thumnail URL und Titel, die ich in einer Listview zeigen möchte.android youtube data api

Ich versuche, dies mit der Verwendung meiner api_key zu tun, aber ich kann es nicht zur Arbeit. Die letzte Zeile (system.out.println) druckt nichts. Der Code, den ich geschrieben habe, ist unter

try { 

     YouTube youtube = new YouTube.Builder(HTTP_TRANSPORT, JSON_FACTORY, new 
     HttpRequestInitializer() { 
      public void initialize(HttpRequest request) throws IOException { 
      } 
     }).setApplicationName("my_project").build(); 

     HashMap<String, String> parameters = new HashMap<>(); 
     parameters.put("part", "snippet,contentDetails,statistics"); 
     parameters.put("id", "yb7E4lQIaZI"); 

     YouTube.Videos.List videosListByIdRequest = youtube.videos().list(parameters.get("part").toString()); 
     videosListByIdRequest.setKey(MY_API_KEY_FROM_DEVELOPER_CONSOLE); 
     if (parameters.containsKey("id") && parameters.get("id") != "") { 
      videosListByIdRequest.setId(parameters.get("id").toString()); 
     } 

     VideoListResponse response = videosListByIdRequest.execute(); 
     System.out.println(response); 


    } catch (GoogleJsonResponseException e) { 
     e.printStackTrace(); 
     System.err.println("There was a service error: " + e.getDetails().getCode() + " : " + e.getDetails().getMessage()); 
    } catch (Throwable t) { 
     t.printStackTrace(); 
    } 

Wenn ich die Debug führen Sie es nach der Zeile beendet 'VideoListResponse response = videosListByIdRequest.execute();' und geht nicht in die Zeile 'System.out.println (response)'.

Die App doesnot Absturz oder einen Fehler zeigen, es nur auf die Linie ‚System.out.print‘ gehen tut

Antwort

0

Haben Sie überprüfen, ob Sie Internet-Erlaubnis in Ihrem Manifest hinzugefügt haben.

<uses-permission android:name="android.permission.INTERNET" /> 
+0

Ja..ich habe bereits hinzugefügt..ich kann das Video ausführen, aber kann nicht die Youtube-Daten API zu arbeiten – Vi012