Add video to the app or youtube API? - android

I am currently developing an app where I need to play a video which is on YouTube. Is it advisable to download the video, put it in my project and then play using a videoview or play directly using the Youtube player?
Also, if the preferred option is by playing using the Youtube player, is there any way I can play it as one of the item in a listview?

I would not recommend to merge the video file into your application because it would heavily increase the size of the APK. Have a look at the YouTubePlayerView - this is exactly what you need.

Related

How to play YouTube videos in background in android?

I'm a beginner and I’m working on an android project in which I play youtube videos using Google YouTube data API.
Is it possible to play the video in the background even after the user has switched to another app or pressed the home button?
Is it possible to separate the audio from the video and stream that in the background?
I don't want to use web view.
It is possible to play the audio in the background.
However , you are not allowed to do so.
This violation of the Youtube API is cause for immidiate removal from the play store.
Official answer:
During review, we found that your app violates the Prohibited Actions provision of the Content Policy.
We have determined that your app enables background playing of YouTube videos, which is a violation of the YouTube API Terms of Service:
"Your API Client will not, and You will not encourage or create functionality for Your users or other third parties to: (8) separate, isolate, or modify the audio or video components of any YouTube audiovisual content made available through the YouTube API;"
youtube red users only they possible to play youtube videos in background (https://support.google.com/youtube/answer/6308116?hl=en). You can check if they have this in the api,
its possible to play youtube videos in background if you open the desktop version of youtube in a browser.
Maybe you can make use of this by opening the correct link in a webview in background
Yes its possible and its easy. No installation, no root, no violations. Let me explain it.
Andriod 9 --> Settings --> Search Picture in Picture --> select YouTube --> Allow
Once Allow picture-in-picture is enabled. You can run YouTube in Background.
I got another idea, but not sure will it violate the rule.
You can build your own service base on youtube-dl. More explain step by step:
First you got the url of the video from Youtube
Second you extract the audio information from the origin video url, and you now get the audio source via youtube-dl
Play the audio source in the background
In this way you are not using the Youtube api directly, I think it's fine to only use the audio from the source and play it in the background.

How to play Facebook and Youtube videos in android?

How do I play Facebook, YouTube and Vimeo videos in my application? I want to play a video by streaming it directly from servers without downloading. I don't want to use default intent. How can I do this?
You can use this JieCaoVideoPlayer library provide so many option to play videos

Is it possible to show our own adds before playing YouTube activity?

I'm new to this concept actually. I'm using Android YouTube SDK for playing YouTube videos. I doubt is before playing video I need to display my own video add is possible to do that. I already search in Google but no answer found.
If you want to play your ad via youtube player api, the answer - no, you can't. But at the end of your ad playback you can call play() on the YouTubePlayer instance.

How to use single player for both ads and video using google android Exoplayer

Currently in the given exoplayer demo app google is using two exoplayers to play ads and video. I have a problem of video overlapping while playing pre roll and mid roll ads. So to avoid this I want to use only one exoplayer to play both ads and video. Has anybody tried using single exoplayer?
Instead of just using MediaSource, use mediaSourceWithAds object:
MediaSource mediaSourceWithAds =
new AdsMediaSource(mediaSource, dataSourceFactory, imaAdsLoader,
playerView.getOverlayFrameLayout(),null,null);
This should do it.

how to access youtube raw video file and play it in android youtube api

i want to display all the videos uploaded by a user, say cnn,
in my own android app, i will have a webview, and when user clicks on this video (cnn), it will play that particular youtube video in android's native video player, once video finishes, it will return to my app (webview where user lastly clicked)
my question is, which part of the google youtube data api should i feed to the intent? using the example below?
https://developers.google.com/youtube/2.0/developers_guide_protocol_understanding_video_feeds#Understanding_Video_Entries
can someone give me a CONCRETE example, no abbreviation or whatsoever, a link i should put in the intent?
i am confused because examples i found has .mp4 extension etc, which android will understand the intent that a video is requested to play.
but in the link provided above, there is no link to the raw file, i.e. no URI ends with .mp4
please help
By going thorough the documentation about youtube api and testing the demo App i think in-order make a app using youtube-api need
1) Developer key
2)Phone installed with latest version of youtube application (i think Actually youtube-api use some supports of youtube app to play video)
3)By using this api video will stay inside your app. but it use support from youtube app to play video
Note:- if am wrong Correct me

Categories

Resources