I am able to get the Youtube content using JAVA. Please help me out to fetch the data in Android.
Here’s the code in Java:
public class YouTubeTest
{
public static void main(String[] args)
{
try {
YouTubeService myService = new YouTubeService("mycompany-myapp-1");
String myFeed = "http://gdata.youtube.com/feeds/videos?start-index=1&max-results=25&q=earth";
printVideoFeed(myService, myFeed);
}
catch (IOException ex) {
Logger.getLogger(YouTubeTest.class.getName()).log(Level.SEVERE, null, ex);
}
catch (ServiceException ex) {
Logger.getLogger(YouTubeTest.class.getName()).log(Level.SEVERE, null, ex);
}
}
private static void printVideoFeed(YouTubeService service, String feedUrl) throws IOException, ServiceException {
VideoFeed videoFeed = service.getFeed(new URL(feedUrl), VideoFeed.class);
List<VideoEntry> allVideos = videoFeed.getEntries();
Iterator<VideoEntry> itAllVideos = allVideos.iterator();
while (itAllVideos.hasNext()){
VideoEntry oneVideo = itAllVideos.next();
TextConstruct oneVideoTitle = oneVideo.getTitle();
String oneVideoTitleText = oneVideoTitle.getPlainText();
//Print titles of all videos:
System.out.print(oneVideoTitleText);
List<Person> allAuthors = oneVideo.getAuthors();
Iterator<Person> itAllAuthors = allAuthors.iterator();
while (itAllAuthors.hasNext()){
Person oneAuthor = itAllAuthors.next();
//Print authors of current title:
System.out.print(" (by " + oneAuthor.getName() +")");
}
YtStatistics views= oneVideo.getStatistics();
System.out.print("\t "+views.getViewCount());
}
}
}
I’ve included :
mail.jar
activation.jar
gdata-client-1.0.jar
gdata-client-meta-1.0.jar
gdata-core-1.0.jar
gdata-media-1.0.jar
gdata-youtube-1.0.jar
gdata-youtube-meta-1.0.jar
When I am trying the same code in android it gives exception:
FATAL EXCEPTION: main
java.lang.NoClassDefFoundError:com.google.gdata.client.youtube.YouTubeService
at com.example.youtry.YouTubeTest.abcd(YouTubeTest.java:32)
at com.example.youtry.MainActivity.onCreate(MainActivity.java:15)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1611)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663)
at android.app.ActivityThread.access$1500(ActivityThread.java:117)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:123)
at android.app.ActivityThread.main(ActivityThread.java:3683)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
at dalvik.system.NativeStart.main(Native Method)
Please Help Me Out!!!
my suggestion is you can use json Api for getting all types of Youtub Vedioe and you can easily parse it, and get the require details.
like contains types vidieo
String[] MatchItem={“top_rated”,”top_favorites”,”most_viewed”,”most_popular”,”most_recent”};
// usefull url
strUrlmy = “http://gdata.youtube.com/feeds/api/standardfeeds/”+MatchItem[position]+ “?
v=2&alt=json”;