ProHoster > Блог > ayelujara iroyin > Iku Koshchei wa lori atokọ ti awọn iṣeduro (Ṣe o ṣee ṣe lati jẹ ki YouTube ni itunu ati ailewu?)
Iku Koshchei wa lori atokọ ti awọn iṣeduro (Ṣe o ṣee ṣe lati jẹ ki YouTube ni itunu ati ailewu?)
Ifihan kukuru: Mo fẹ lati sọrọ nipa ẹrọ orin ori ayelujara YouTube fun Android pẹlu awọn akojọ orin agbegbe, awọn ikanni ati awọn iṣeduro.
Ifihan ti o gbooro:
Ni akoko diẹ sẹhin Mo pade ni deede iṣoro kanna bi onkọwe ohun elo iyanu kan Ikanni Whitelist, ati pinnu fun ara mi gangan iwa kanna si rẹ: Mo fẹ lati ni anfani lati fun ọmọ mi ni tabulẹti tabi foonuiyara pẹlu awọn aworan efe lati igba de igba, ṣugbọn emi ko ni idunnu rara pẹlu ibiti, lẹhin 2-3 tẹ, akojọ naa ti awọn iṣeduro ni awọn ohun elo boṣewa - awọn onibara YouTube - gba ọmọ naa.
Laanu, lẹhin fifi sori ohun elo ikanni Whitelist, prosaic miiran diẹ sii, ṣugbọn sibẹ abawọn apaniyan ni a ṣe awari - NIH I (ati, pataki julọ, ọmọ mi) rii wiwo rẹ ko rọrun pupọ, paapaa lẹhin aṣa ti lilo ẹrọ orin YouTube Kids.
Ni gbogbogbo, lẹhin igba diẹ Mo ti ṣetan lati ṣe imuse ti ara mi. Lẹhin akoko diẹ, o ṣee ṣe lati fi aami sii lori itusilẹ akọkọ.
Осnovnые возможности:
Ṣafikun awọn ikanni ayanfẹ rẹ ati awọn akojọ orin – wọn yoo wa ni fipamọ ati ṣe atọkasi ni aaye data agbegbe
Laarin awọn akojọ orin ti a ṣafikun, pa awọn fidio ti ko wulo ti o ko ba nilo wọn
Atokọ awọn iṣeduro jẹ ipilẹṣẹ laileto nikan lati awọn ikanni ati awọn akojọ orin ti a ṣafikun si ohun elo naa
Ni isalẹ jẹ awotẹlẹ ti awọn ẹya akọkọ ni awọn alaye diẹ sii, pẹlu diẹ ninu awọn alaye imọ-ẹrọ lori bii o ṣe le mu awọn fidio YouTube ṣiṣẹ ninu ohun elo Android rẹ laisi lilo Google API ati awọn fifiwe wẹẹbu.
Lori iboju akọkọ ati loju iboju ẹrọ orin: awọn iṣeduro laileto lati awọn ikanni ti kii ṣe laileto
Wiwa lẹsẹkẹsẹ ni ibi ipamọ data agbegbe
=>
Fi ikanni titun kan kun tabi akojọ orin
Ṣewadii pẹlu orukọ lori ayelujara tabi fi adirẹsi ti a mọ sii. Atokọ awọn fidio ti ikanni tabi akojọ orin ti wa ni ipamọ si ibi ipamọ data agbegbe; awọn aami ko ni ipamọ.
Akojọ orin alayipo - mu awọn abajade wiwa ṣiṣẹ
=>
Ninu awọn iṣeduro fidio yoo wa awọn fidio nikan ti o ni itẹlọrun ibeere wiwa.
Bakanna, ti o ba ṣii fidio lati awọn eto akojọ orin, awọn fidio nikan lati inu akojọ orin kanna yoo han ninu atokọ awọn iṣeduro.
Awọn akojọ orin ati awọn ikanni le wa ni pipa fun igba diẹ ati tan lẹẹkansi
Jọwọ ṣakiyesi: awọn fidio lati inu akojọ orin alaabo yoo tun parẹ lati awọn abajade wiwa, itan wiwo ati lati atokọ awọn ayanfẹ. Ṣugbọn maṣe yọ ara rẹ lẹnu, wọn yoo han nibẹ lẹẹkansi lẹsẹkẹsẹ lẹhin ti akojọ orin ti wa ni titan lẹẹkansi.
Fi fidio kan kun si akojọ dudu
Fidio ti a dina mọ kii yoo ṣe afihan ni awọn iṣeduro, ni awọn abajade wiwa, ati pe yoo parẹ lati atokọ ti awọn ayanfẹ ati lati itan wiwo. Fidio naa yoo tun han ni awọn eto akojọ orin.
Wo akojọ dudu ki o tun mu awọn ohun dinalọna nipasẹ aṣiṣe ṣiṣẹ: Eto > Akojọ akọsori > Akojọ dudu
Awọn fidio ayanfẹ ati itan wiwo
Awọn fidio ayanfẹ loju iboju ẹrọ orin ti samisi pẹlu aami akiyesi ni igun apa ọtun oke.
Awọn akojọ aṣayan ọrọ inu akọle iboju ati titẹ-gun ni awọn aworan ati awọn akojọ
Daakọ orukọ tabi adirẹsi fidio tabi akojọ orin ni iboju wiwo tabi ni eyikeyi atokọ.
Ibẹrẹ kiakia - ṣafikun awọn ikanni iṣeduro ati awọn akojọ orin
=>
Ohun elo naa yoo dabi awọn sikirinisoti loke.
Awọn ikanni ti ko nilo ati awọn akojọ orin le wa ni paa tabi paarẹ ninu awọn eto.
Kii ṣe lori Google Play ati pe kii yoo wa ni ọjọ iwaju ti o sunmọ (Google ṣe idiwọ awọn ohun elo ti o kọja API ati ṣe itupalẹ oju opo wẹẹbu wọn, pẹlu ikanni Whitelist ti a mẹnuba tabi ẹrọ orin NewPipe)
Ni lokan pe yiyi laarin awọn ẹya oriṣiriṣi lati awọn orisun oriṣiriṣi lori ẹrọ kanna kii yoo ṣiṣẹ nitori awọn ibuwọlu oriṣiriṣi ti faili apk; ṣaaju fifi ẹya sori ẹrọ lati orisun tuntun, iwọ yoo ni akọkọ lati paarẹ ẹya ti o fi sii pẹlu data naa - kaṣe akojọ orin ati itan lilọ kiri ayelujara (tabi ro ero bi o ṣe le gbe data lọ).
Awọn alaye imọ-ẹrọ
Ko nilo akọọlẹ Google/YouTube kan, iwọ nilo Intanẹẹti nikan, o lo awọn ile-ikawe wọnyi:
ibeere: Ṣe o ni gbogbo ofin a scrape awọn aaye ayelujara lai aiye (tabi pẹlu ohun fojuhan wiwọle) lati awọn onkọwe? Google yọ awọn ohun elo kuro lati Google Play, eyi ti ko lo API wọn, ṣugbọn ṣe itupalẹ awọn aaye wọn, nitori wọn ṣẹ adehun olumulo wọn. idahun: dajudaju, o jẹ ofin, o wa si ọ eyi ti ọpa lati lo lati ka alaye ti o wa ni gbangba. Siwaju sii: Ile-ẹjọ AMẸRIKA kan ti fi ofin si oju opo wẹẹbu scraping patapata ati kikọlu imọ-ẹrọ eewọ pẹlu rẹ., ṣugbọn Gul le ni ero ti o yatọ; tikalararẹ, Emi ko sibẹsibẹ ni ifẹ lati lọ si ile-ẹjọ Amẹrika kan lati parowa fun wọn.
Diẹ ninu awọn koodu
ìkàwé NewPipeExtractor - player support ise agbese Opo tuntun, gba ọ laaye lati ṣe igbasilẹ atokọ ti awọn fidio fun ikanni pàtó kan tabi atokọ orin, ṣe igbasilẹ alaye alaye nipa fidio olokiki (ohun ti o han lori oju-iwe wẹẹbu fidio), gba adirẹsi ti aami fidio, ati tun gba adirẹsi fidio naa ṣiṣan.
Awọn koodu fun ikojọpọ akojọ orin jẹ diẹ ti o lewu, nitorina Emi kii yoo fun ni nibi, fun awọn ti o nifẹ, wo koodu orisun, o jẹ ipilẹ kilasi kan. ContentLoader.
Jẹ ki a wo bii o ṣe le gba adirẹsi ti ṣiṣan fidio lati adirẹsi oju-iwe fidio ti gbogbo eniyan ati mu ṣiṣẹ ninu ẹrọ orin.
O jẹ iyanilenu pe lẹhin eyi iwọ kii yoo ni anfani lati lo, nitori… apeere yoo kerora nipa sonu Downloader kilasi. O le ṣe daakọ si iṣẹ akanṣe lati inu itọsọna awọn idanwo adaṣe NewPipeExtractor/extractor/src/idanwo/java/org/schabi/newpipe/Downloader.java - ṣiṣẹ fun ẹya 0.17.4 (o dabi pe a tun ṣe apakan yii ni ẹya tuntun ti ile-ikawe, ṣugbọn a tun nilo lati ṣayẹwo).
Gba adirẹsi ti ṣiṣan fidio nipasẹ adirẹsi oju-iwe fidio lori oju opo wẹẹbu YouTube:
Ẹrọ orin yoo exoplayer lati Google funrararẹ. Eyi kii ṣe apẹrẹ wẹẹbu lori YouTube, ṣugbọn ẹrọ orin ifibọ gidi kan fun ṣiṣere eyikeyi awọn fidio, irọrun pupọ ati isọdi. O tun le mu awọn ṣiṣan fidio ṣiṣẹ lati YouTube ti o ba pese pẹlu adirẹsi ti o pe. A ṣẹṣẹ gba adirẹsi ṣiṣan naa, nitorinaa jẹ ki a wo bii a ṣe le firanṣẹ si ẹrọ orin.
A kii yoo gbero gbogbo awọn nuances ti gbigbe paati ẹrọ orin sori iboju ohun elo (o le wo awọn apẹẹrẹ lori oju opo wẹẹbu iṣẹ akanṣe tabi ni koodu), a yoo wo bi o ṣe le bẹrẹ fidio kan lati YouTube ninu ẹrọ orin ni adirẹsi ti o gba loke:
private void playVideoStream(final String streamUrl, final long seekTo) {
if (streamUrl == null) {
// остановить проигрывание текущего ролика, если был загружен
videoPlayerView.getPlayer().stop(true);
} else {
// https://exoplayer.dev/
// https://github.com/google/ExoPlayer
final Uri mp4VideoUri = Uri.parse(streamUrl);
final MediaSource videoSource = new ProgressiveMediaSource.Factory(videoDataSourceFactory)
.createMediaSource(mp4VideoUri);
// Поставим на паузу старое видео, пока готовим новое
if (videoPlayerView.getPlayer().getPlaybackState() != Player.STATE_ENDED) {
// Если ставить на паузу здесь после того, как плеер встал на паузу сам, закончив
// играть видео, получим здесь второе событие STATE_ENDED, поэтому нам нужна здесь
// специальная проверка.
// При этом значение getPlayWhenReady() останется true, поэтому проверяем именно состояние.
// https://github.com/google/ExoPlayer/issues/2272
videoPlayerView.getPlayer().setPlayWhenReady(false);
}
// Prepare the player with the source.
((SimpleExoPlayer) videoPlayerView.getPlayer()).prepare(videoSource);
// Укажем текущую позицию сразу при загрузке видео
// (в коментах что-то пишут что-то про датасорсы, которые поддерживают или не поддерживают
// переходы seek при загрузке, похоже, что это фигня - просто делаем seek сразу после загрузки)
// Exoplayer plays new Playlist from the beginning instead of provided position
// https://github.com/google/ExoPlayer/issues/4375
// How to load stream in the desired position? #2197
// https://github.com/google/ExoPlayer/issues/2197
// в этом месте нормлаьный duration еще не доступен, поэтому его не проверяем
//if(seekTo > 0 && seekTo < videoPlayerView.getPlayer().getDuration()) {
if (seekTo > 0) {
// на 5 секунд раньше
videoPlayerView.getPlayer().seekTo(seekTo - 5000 > 0 ? seekTo - 5000 : 0);
}
videoPlayerView.getPlayer().setPlayWhenReady(true);
}
}
Awọn ọran ti a mọ
Kii yoo mu awọn fidio ṣiṣẹ pẹlu awọn ihamọ ọjọ-ori ti o nilo iwọle si akọọlẹ Google/YouTube rẹ
imọran: ṣafikun iru awọn fidio si atokọ dudu tabi beere lọwọ onkọwe fidio lati yọ ihamọ ti a ṣeto nipasẹ aṣiṣe.
Diẹ ninu awọn fidio igbohunsafefe fun eyiti iṣẹ naa da ipari gigun odo kii yoo ṣiṣẹ (fun iru awọn fidio, iye akoko ninu awọn atokọ ati ibi aworan aworan jẹ samisi bi “[dur undef]”)
Ti o ba wa fidio ti gbogbo eniyan ti ko nilo iwọle kan, ṣiṣẹ ni ẹrọ aṣawakiri, ṣugbọn ko ṣiṣẹ ninu ẹrọ orin, firanṣẹ ijabọ kokoro kan (o ṣee ṣe pe iṣoro naa ti wa titi tẹlẹ ninu ẹya tuntun. NewPipeExtractor ati pe iwọ yoo nilo lati ṣe imudojuiwọn apejọ pẹlu ẹya yii, fun apẹẹrẹ).
Ni wiwo le fa fifalẹ ti Intanẹẹti ba lọra (ṣugbọn ko wa ni pipa)
Bajẹ
Ọmọ mi gbe lati tabulẹti kan si Samsung smart TV, eyiti ko le ṣiṣe awọn ohun elo Android. Nitorinaa, iṣakoso obi ti o dara julọ tun jẹ ti ara ẹni.
Ṣugbọn ohun elo naa wa ni irọrun to fun mi lati bẹrẹ lilo funrararẹ. Ni igba akọkọ ti sami lati awọn tete ṣiṣẹ awọn ẹya ni wipe mo ti wà ni miran aye. Gbogbo akoonu ti wa ni igbasilẹ lati YouTube, ṣugbọn eyi kii ṣe YouTube mọ, ṣugbọn nkan miiran, ailewu ati iṣakoso, bi ẹnipe o mu centipede kan kuro ni oju rẹ ki o fi sinu idẹ gilasi kan. Ati pe o jẹ gbogbo nipa awọn iṣeduro.