All Projects → flipkart-incubator → Android Inline Youtube View

flipkart-incubator / Android Inline Youtube View

Licence: apache-2.0
Utility library around using YouTube inside your android app.

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Android Inline Youtube View

Youtube player flutter
Flutter plugin for playing or streaming YouTube videos inline using the official iFrame Player API. Supports both Android and iOS platforms.
Stars: ✭ 366 (+16.93%)
Mutual labels:  youtube-player, youtube, inline, webview
Android Youtube Player
YouTube Player library for Android and Chromecast, stable and customizable.
Stars: ✭ 2,510 (+701.92%)
Mutual labels:  youtube-player, youtube, webview
Yuuplayer
Android Youtube Player library without any dependency, webview based.
Stars: ✭ 130 (-58.47%)
Mutual labels:  youtube-player, youtube, webview
Youtube player
A flutter plugin to play Youtube Videos without API Key in range of Quality(144p, 240p,360p,480p,720p and 1080p).
Stars: ✭ 118 (-62.3%)
Mutual labels:  youtube-player, youtube, inline
Nativescript Youtubeplayer
Stars: ✭ 34 (-89.14%)
Mutual labels:  youtube-player, youtube
Skytube
An open-source YouTube app for Android.
Stars: ✭ 938 (+199.68%)
Mutual labels:  youtube-player, youtube
Rey
RE-imagined Youtube music player for web (& desktop)
Stars: ✭ 59 (-81.15%)
Mutual labels:  youtube-player, youtube
Ytmdesktop
A Desktop App for YouTube Music
Stars: ✭ 1,297 (+314.38%)
Mutual labels:  youtube-player, youtube
Streamly
Portable, independent, web-based, simple streaming YouTube video queues and playlists for music videos, audiobooks, etc.
Stars: ✭ 60 (-80.83%)
Mutual labels:  youtube-player, youtube
Ngx Youtube Player
YouTube player app built with Angular 7
Stars: ✭ 92 (-70.61%)
Mutual labels:  youtube-player, youtube
React Native Youtube Iframe
A wrapper of the Youtube-iframe API built for react native.
Stars: ✭ 221 (-29.39%)
Mutual labels:  youtube-player, youtube
Channels
The Mac App for YouTube Channels.
Stars: ✭ 23 (-92.65%)
Mutual labels:  youtube-player, youtube
Yt Player
Simple, robust, blazing-fast YouTube Player API
Stars: ✭ 576 (+84.03%)
Mutual labels:  youtube-player, youtube
Youtube Extension
🔴YouTube Extension🧰>80 Features ⭐Please document, code or donate📌Tidy📌Longest-standing(2012)(Users>350000)⋮🎞️🎛️🎧⚙️🎬🔊☕🎨🧩🧪📈⏯️(Player: Repeat Screenshot Rotate; Hide related video distraction. Always expand video Description. Playback speed. Video Quality bandwidth H.264 electricity. Player Size Full Window. Themes Customization. Statistics. Reverse Playlist YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube YouTube Youtube enhancer YouTube app YouTube video YouTube YouTube YouTube api v3 YouTube playback YouTube player VP8 VP9 AV1 vidIQ tubebuddy download adblocker adblock ads sponsorblock addon youtube music ⭐ youtube premium css css4 html5 ytdl youtube-dl invidious iridium ParticleCore youtube+ youtube++ youtube-plus maia-yt youtube nonstop youtube control center vlogger vlog h264ify h264 m.youtube.com music.youtube.com studio.youtube youtube mobile youtube studio ⭐ kids Vanced gaming.youtube.com gaming youtubecenter freetube lite-youtube-embed newpipe youtube-dl-gui mps-youtube nuclear pytube awesome youtubers youtube downloader 8k 4k 60fps 30fps youtubeexplode vidgear k-lite tubebuddy adobe apple ios iphone design simplify ffmpeg premiere designer annoyance youtube upload
Stars: ✭ 1,027 (+228.12%)
Mutual labels:  youtube-player, youtube
Youtube Music
YouTube Music Desktop App bundled with custom plugins (and built-in ad blocker / downloader)
Stars: ✭ 376 (+20.13%)
Mutual labels:  youtube-player, youtube
Ngx Youtube Player
(ngx) A youtube component wrapped with Angular (typescript)
Stars: ✭ 89 (-71.57%)
Mutual labels:  youtube-player, youtube
Smartyoutubetv
Watch YouTube videos on your TV and set-top-box with comfort
Stars: ✭ 4,384 (+1300.64%)
Mutual labels:  youtube, webview
Youtubeux
With MVVM Architecture pattern using Android Architecture Components This is a sample app demonstrating Youtube player animation using constraint layout
Stars: ✭ 823 (+162.94%)
Mutual labels:  youtube, fragments
ytqck.github.io
YouTube quick ⚡ Search and Download Music for Free.
Stars: ✭ 18 (-94.25%)
Mutual labels:  youtube, youtube-player
YoutubePlayer
Play and download YouTube videos. Extract audio from video. With minimalist beautiful gui.
Stars: ✭ 19 (-93.93%)
Mutual labels:  youtube, youtube-player

inline-youtube-view

Build Status

YouTube component for Android, iOS and React. This is a suite of utility libraries around using YouTube inside your Android, iOS or React Native app.

youtube-android

Playing Youtube on Android (specially inline) comes with some challenges :

  • YouTube SDK does not work on all devices ( where YouTube services could have been uninstalled)
  • You cannot run more than one instance of the YouTube view
  • Playing them inline where in a list you can have more than one videos in a single list.

inline-youtube-view for Android checks if the services are available and will fall back gracefully to using WebView in the event they are not.

YouTubePlayerView : The YouTubePlayerView provided by the YouTube SDK comes with a restriction that the activty hosting this needs to extend from YouTubeBaseActivity. This view removes these restrictions.

Demo Gifs

YouTubePlayer in Activity (Fullscreen Mode)

YouTube Activity

YouTubePlayer in Fragment (inline native)

YouTube Fragment

How to use ?

Add it in your root build.gradle at the end of repositories :

allprojects {
   repositories {
     ...
     maven { url "https://jitpack.io" }
   }
}

Add the dependency

dependencies {
    implementation 'com.github.flipkart-incubator:android-inline-youtube-view:1.0.3'
}

YouTubePlayer Activity

Start an YouTubeActivity intent with apiKey and videoId. This will play the youtube video in a new activity in fullscreen mode.

Intent intent = new Intent(MainActivity.this, YouTubeActivity.class);
intent.putExtra("apiKey", Constants.API_KEY);
intent.putExtra("videoId", "3AtDnEC4zak");
startActivity(intent);

Also, make sure that you add the activity in the AndroidManifest.xml file.

<activity android:name="com.flipkart.youtubeview.activity.YouTubeActivity" />

YouTubePlayer Inline

Create an instance of YouTubePlayerView inside a fragment. To initialize the player, you need to call the initPlayer method with following params:

  1. apiKey
  2. videoId
  3. webviewUrl : the link to iframe.html file (this is required when the device is not able to render native video, a fallback). By default, use 'https://cdn.rawgit.com/flipkart-incubator/inline-youtube-view/60bae1a1/youtube-android/youtube_iframe_player.html'
  4. playerType : native, webview or auto (try native, else fallback to webview)
  5. listener : callback listener
  6. fragment : fragment hosting this view
  7. imageLoader : to load thumbnail image
YouTubePlayerView playerView = new YouTubePlayerView(context);
playerView.initPlayer(Constants.API_KEY, videoId, "https://cdn.rawgit.com/flipkart-incubator/inline-youtube-view/60bae1a1/youtube-android/youtube_iframe_player.html", playerType, listener, fragment, imageLoader);

YouTube iOS Player

We have open-sourced the inline-youtube-player for iOS also.

Contributing

The easiest way to contribute is by forking the repo, making your changes and creating a pull request.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].