การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย)

บทนำสั้นๆ: ฉันต้องการพูดคุยเกี่ยวกับโปรแกรมเล่น YouTube ออนไลน์สำหรับ Android พร้อมเพลย์ลิสต์ ช่อง และคำแนะนำในท้องถิ่น

การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย)

บทนำเพิ่มเติม:
เมื่อไม่นานมานี้ ฉันพบปัญหาเดียวกันกับผู้เขียนแอปพลิเคชันที่ยอดเยี่ยมนี้ รายการที่อนุญาตพิเศษของช่องและตัดสินใจด้วยตัวเองว่ามีทัศนคติแบบเดียวกันนี้: ฉันต้องการให้แท็บเล็ตหรือสมาร์ทโฟนที่มีการ์ตูนให้ลูกของฉันเป็นครั้งคราว แต่ฉันไม่พอใจเลยกับที่หลังจากคลิก 2-3 ครั้งรายการ คำแนะนำในแอปพลิเคชันมาตรฐาน - ไคลเอนต์ YouTube - พาเด็กไป

น่าเสียดายที่หลังจากติดตั้งแอปพลิเคชัน Channel Whitelist แล้ว ก็พบข้อบกพร่องที่ธรรมดากว่าอีกประการหนึ่ง แต่ยังคงเป็นอันตรายถึงชีวิต - NIH I (และที่สำคัญที่สุดคือลูกชายของฉัน) พบว่าอินเทอร์เฟซของมันไม่สะดวกนักโดยเฉพาะหลังจากนิสัยชอบใช้เครื่องเล่น YouTube Kids

โดยทั่วไปแล้ว หลังจากผ่านไประยะหนึ่ง ฉันก็พร้อมที่จะดำเนินการด้วยตนเอง หลังจากนั้นไม่นานก็เป็นไปได้ที่จะติดแท็กในการเปิดตัวครั้งแรก

คุณสมบัติหลัก:

  • เพิ่มช่องและเพลย์ลิสต์ที่คุณชื่นชอบ - พวกเขาจะถูกบันทึกและจัดทำดัชนีในฐานข้อมูลท้องถิ่น
  • ภายในเพลย์ลิสต์ที่เพิ่ม ให้ปิดวิดีโอที่ไม่จำเป็นหากคุณไม่ต้องการ
  • รายการแนะนำจะถูกสร้างขึ้นแบบสุ่มจากช่องและเพลย์ลิสต์ที่เพิ่มลงในแอปพลิเคชันเท่านั้น

โอเพ่นซอร์ส, ใบอนุญาต GPLv3: https://github.com/sadr0b0t/yashlang/

ด้านล่างนี้คือภาพรวมของคุณสมบัติหลักโดยละเอียด รวมถึงรายละเอียดทางเทคนิคบางประการเกี่ยวกับวิธีเล่นวิดีโอ YouTube ในแอปพลิเคชัน Android ของคุณโดยไม่ต้องใช้ Google API และ Web Wrapper

บนหน้าจอหลักและบนหน้าจอเครื่องเล่น: คำแนะนำแบบสุ่มจากช่องที่ไม่สุ่ม

การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย)

การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย)

การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย)

การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย)

การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย)

การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย)

ค้นหาทันทีในฐานข้อมูลท้องถิ่น

การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย) => การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย)

เพิ่มช่องหรือเพลย์ลิสต์ใหม่

การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย) การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย) การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย) การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย)

การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย) การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย) การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย) การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย)

ค้นหาตามชื่อออนไลน์หรือใส่ที่อยู่ที่รู้จัก รายการวิดีโอของช่องหรือเพลย์ลิสต์จะถูกบันทึกไว้ในฐานข้อมูลท้องถิ่น ไอคอนจะไม่ถูกแคช

เพลย์ลิสต์แบบไดนามิก - เล่นผลการค้นหา

การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย) การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย) => การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย)

การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย)

การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย)

ในวิดีโอแนะนำจะมีเฉพาะวิดีโอที่ตรงกับคำค้นหาเท่านั้น

ในทำนองเดียวกัน หากคุณเปิดวิดีโอจากการตั้งค่าเพลย์ลิสต์ เฉพาะวิดีโอจากเพลย์ลิสต์เดียวกันเท่านั้นที่จะปรากฏในรายการแนะนำ

เพลย์ลิสต์และช่องสามารถปิดและเปิดใหม่ได้ชั่วคราว

การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย) การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย) การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย) การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย)

โปรดทราบ: วิดีโอจากเพลย์ลิสต์ที่ถูกปิดใช้งานจะหายไปจากผลการค้นหา ประวัติการดู และจากรายการโปรด แต่ไม่ต้องกังวล รายการเหล่านั้นจะปรากฏที่นั่นอีกครั้งทันทีหลังจากเปิดเพลย์ลิสต์อีกครั้ง

เพิ่มวิดีโอลงในบัญชีดำ

การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย) การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย) การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย)

วิดีโอที่ถูกบล็อกจะไม่แสดงในคำแนะนำ ในผลการค้นหา และจะหายไปจากรายการโปรดและจากประวัติการดู วิดีโอจะยังคงมองเห็นได้ในการตั้งค่าเพลย์ลิสต์

ดูบัญชีดำและเปิดใช้งานรายการที่ถูกบล็อกโดยไม่ได้ตั้งใจอีกครั้ง:
การตั้งค่า > เมนูส่วนหัว > บัญชีดำ

การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย) การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย)

วิดีโอโปรดและประวัติการดู

การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย) การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย) การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย)

วิดีโอโปรดบนหน้าจอเครื่องเล่นจะมีเครื่องหมายดอกจันอยู่ที่มุมขวาบน

เมนูบริบทในชื่อหน้าจอและคลิกยาวในแกลเลอรีและรายการ

การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย) การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย) การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย) การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย)

คัดลอกชื่อหรือที่อยู่ของวิดีโอหรือเพลย์ลิสต์ในหน้าจอรับชมหรือในรายการใดๆ

เริ่มต้นอย่างรวดเร็ว - เพิ่มช่องและเพลย์ลิสต์ที่แนะนำ

การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย) การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย) => การเสียชีวิตของ Koshchei อยู่ในรายการคำแนะนำ (เป็นไปได้ไหมที่จะทำให้ YouTube อบอุ่นและปลอดภัย)

แอปพลิเคชันจะมีลักษณะเหมือนภาพหน้าจอด้านบนทันที

ช่องและเพลย์ลิสต์ที่ไม่จำเป็นสามารถปิดหรือลบได้ในการตั้งค่า

การติดตั้ง

หน้าโครงการ: https://github.com/sadr0b0t/yashlang/
เป็นภาษาอังกฤษ: https://github.com/sadr0b0t/yashlang/blob/master/README.en.md
เผยแพร่: https://github.com/sadr0b0t/yashlang/releases

โปรดทราบว่าการสลับระหว่างเวอร์ชันต่างๆ จากแหล่งต่างๆ บนอุปกรณ์เดียวกันจะไม่ทำงานเนื่องจากลายเซ็นของไฟล์ APK ต่างกัน ก่อนที่จะติดตั้งเวอร์ชันจากแหล่งใหม่ คุณจะต้องลบเวอร์ชันที่ติดตั้งพร้อมกับข้อมูลก่อน - แคชเพลย์ลิสต์และประวัติการเรียกดู (หรือค้นหาวิธีถ่ายโอนข้อมูล)

รายละเอียดทางเทคนิค

ไม่จำเป็นต้องมีบัญชี Google/YouTube คุณเพียงต้องการอินเทอร์เน็ต ใช้ไลบรารีต่อไปนี้:

โอเพ่นซอร์ส ใบอนุญาต GPLv3 ฟรี

คำถาม: โดยทั่วไปแล้วการขูดเว็บไซต์โดยไม่ได้รับอนุญาต (หรือถูกแบนอย่างชัดแจ้ง) จากผู้เขียนนั้นถูกกฎหมายหรือไม่ Google ลบแอพออกจาก Google Playซึ่งไม่ได้ใช้ API แต่แยกวิเคราะห์ไซต์เนื่องจาก พวกเขาละเมิดข้อตกลงผู้ใช้
คำตอบ: แน่นอนว่าถูกกฎหมาย ขึ้นอยู่กับคุณว่าจะใช้เครื่องมือใดในการอ่านข้อมูลที่เปิดเผยต่อสาธารณะ นอกจากนี้: ศาลสหรัฐฯ รับรองการคัดลอกเว็บไซต์อย่างถูกกฎหมาย และห้ามการแทรกแซงทางเทคนิคแต่กุลอาจมีความเห็นต่างออกไป โดยส่วนตัวแล้ว ผมยังไม่มีความปรารถนาที่จะไปศาลอเมริกาเพื่อโน้มน้าวใจพวกเขา

รหัสบางส่วน

ห้องสมุด ใหม่PipeExtractor - โครงการสนับสนุนผู้เล่น NewPipeช่วยให้คุณสามารถดาวน์โหลดรายการวิดีโอสำหรับช่องหรือเพลย์ลิสต์ที่ระบุ ดาวน์โหลดข้อมูลโดยละเอียดเกี่ยวกับวิดีโอที่มีชื่อเสียง (สิ่งที่ปรากฏบนหน้าเว็บของวิดีโอ) รับที่อยู่ของไอคอนวิดีโอ และรับที่อยู่ของวิดีโอด้วย ลำธาร.

รหัสในการโหลดเพลย์ลิสต์นั้นยุ่งยากนิดหน่อยดังนั้นฉันจึงไม่ให้ที่นี่สำหรับผู้ที่สนใจลองดูซอร์สโค้ดโดยพื้นฐานแล้วมันเป็นคลาส ตัวโหลดเนื้อหา.

เรามาดูวิธีรับที่อยู่ของสตรีมวิดีโอจากที่อยู่ของหน้าวิดีโอสาธารณะและเล่นในเครื่องเล่น

เชื่อมต่อห้องสมุดเข้ากับ
แอพ/build.gradle

dependencies {
...
    // NewPipe: youtube parser
    // https://github.com/TeamNewPipe/NewPipeExtractor
    implementation "com.github.TeamNewPipe:NewPipeExtractor:v0.17.4"
...
}

สงสัยว่าหลังจากนี้คุณจะยังใช้มันไม่ได้เพราะ... ตัวอย่างจะบ่นเกี่ยวกับคลาส Downloader ที่หายไป สามารถคัดลอกไปยังโปรเจ็กต์ได้จากไดเร็กทอรีการทดสอบอัตโนมัติ NewPipeExtractor/extractor/src/test/java/org/schabi/newpipe/Downloader.java - ใช้งานได้กับเวอร์ชัน 0.17.4 (ดูเหมือนว่าส่วนนี้จะถูกทำซ้ำในไลบรารีเวอร์ชันที่ใหม่กว่า แต่เรายังต้องตรวจสอบ)

รับที่อยู่ของสตรีมวิดีโอตามที่อยู่ของหน้าวิดีโอบนเว็บไซต์ YouTube:

แอป/src/main/java/su/sadrobot/yashlang/controller/ContentLoader.java

    public String extractYtStreamUrl(final String ytVidUrl) throws ExtractionException, IOException {
        // https://github.com/TeamNewPipe/NewPipeExtractor/blob/dev/extractor/src/test/java/org/schabi/newpipe/extractor/services/youtube/YoutubeStreamExtractorDefaultTest.java
        NewPipe.init(Downloader.getInstance(), new Localization("GB", "en"));
        final YoutubeStreamExtractor extractor = (YoutubeStreamExtractor) YouTube
                .getStreamExtractor(ytVidUrl);
        extractor.fetchPage();
        final String streamUrl = extractor.getVideoStreams().size() > 0 ? extractor.getVideoStreams().get(0).getUrl() : null;
//        for (final VideoStream stream : extractor.getVideoStreams()) {
//            stream.getUrl();
//        }
        return streamUrl;
    }

ที่อยู่วิดีโอ ytVidUrl อาจเป็นที่อยู่สาธารณะของหน้าวิดีโอใดก็ได้บนเว็บไซต์ YouTube เป็นต้น https://www.youtube.com/watch?v=pd2RlatmNRk

ผู้เล่นก็จะได้ เอ็กโซเพลเยอร์ จาก Google นั่นเอง นี่ไม่ใช่การห่อหุ้มเว็บบน YouTube แต่เป็นเครื่องเล่นฝังตัวที่แท้จริงสำหรับการเล่นวิดีโอใด ๆ ค่อนข้างยืดหยุ่นและปรับแต่งได้ นอกจากนี้ยังสามารถเล่นวิดีโอสตรีมจาก YouTube ได้หากคุณระบุที่อยู่ที่ถูกต้อง เราเพิ่งได้รับที่อยู่สตรีม ดังนั้นเรามาดูวิธีการส่งไปยังผู้เล่นกันดีกว่า

เชื่อมต่อห้องสมุดเข้ากับโครงการ แอพ/build.gradle:

dependencies {
...
    // google Exoplayer
    // https://github.com/google/ExoPlayer
    // https://exoplayer.dev/
    implementation 'com.google.android.exoplayer:exoplayer:2.10.8'
...
}

เราจะไม่พิจารณาถึงความแตกต่างทั้งหมดของการวางส่วนประกอบเครื่องเล่นบนหน้าจอแอปพลิเคชัน (คุณสามารถดูตัวอย่างบนเว็บไซต์โครงการหรือในโค้ด) เราจะดูเฉพาะวิธีเริ่มเล่นวิดีโอจาก YouTube ในเครื่องเล่นที่ ที่อยู่ที่ได้รับด้านบน:

แอป/src/main/java/su/sadrobot/yashlang/WatchVideoActivity.java

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);
    }
}

ปัญหาที่ทราบ

  • จะไม่เล่นวิดีโอที่มีการจำกัดอายุที่ต้องลงชื่อเข้าใช้บัญชี Google/YouTube ของคุณ

ตัวอย่างเช่น อิลยา มูโรเมตส์ จาก Mosfilm Cinema Concern, ภาพยนตร์ Ruslan และ Lyudmila 1 เรื่อง Mosfilm Film Concern

คำแนะนำ: เพิ่มวิดีโอดังกล่าวลงในบัญชีดำหรือขอให้ผู้เขียนวิดีโอลบข้อจำกัดที่ตั้งไว้โดยไม่ได้ตั้งใจ

  • วิดีโอออกอากาศบางรายการซึ่งบริการส่งคืนความยาวเป็นศูนย์จะไม่เล่น (สำหรับวิดีโอดังกล่าว ระยะเวลาในรายการและแกลเลอรีจะถูกทำเครื่องหมายเป็น "[dur undef]")

ตัวอย่างเช่น รอมันอยู่! ทุกประเด็นของ Soyuzmultfilm HD (การ์ตูนสำหรับเด็ก) การ์ตูนจากสตูดิโอ Soyuzmultfilm, การ์ตูนยอดนิยม Soyuzmultfilm การ์ตูนจากสตูดิโอ Soyuzmultfilm

คำแนะนำ: เพิ่มวิดีโอดังกล่าวลงในบัญชีดำ

  • วิดีโอที่มีเฉพาะผ่านลิงก์โดยตรงอาจไม่รวมอยู่ในเพลย์ลิสต์ท้องถิ่น แม้ว่าคุณจะดาวน์โหลดวิดีโอทั้งหมดของผู้ใช้ก็ตาม

ตัวอย่างเช่น Taming of Fire ตอนที่ 1 ความกังวลเรื่องภาพยนตร์ Mosfilm

  • หากคุณพบวิดีโอสาธารณะที่ไม่จำเป็นต้องเข้าสู่ระบบ เล่นในเบราว์เซอร์ แต่ไม่เล่นในโปรแกรมเล่น ให้ส่งรายงานข้อบกพร่อง (ค่อนข้างเป็นไปได้ที่ปัญหาได้รับการแก้ไขแล้วในเวอร์ชันใหม่ ใหม่PipeExtractor และคุณจะต้องอัปเดตชุดประกอบด้วยเวอร์ชันนี้เท่านั้น เช่น).

  • อินเทอร์เฟซอาจช้าลงหากอินเทอร์เน็ตช้า (แต่ไม่ได้ปิด)

เป็นผลให้

ลูกชายของฉันย้ายจากแท็บเล็ตไปใช้สมาร์ททีวี Samsung ซึ่งไม่สามารถใช้งานแอปพลิเคชัน Android ได้ ดังนั้นการควบคุมโดยผู้ปกครองที่ดีที่สุดจึงยังคงเป็นเรื่องส่วนตัว

แต่แอปพลิเคชันกลับกลายเป็นว่าสะดวกเพียงพอสำหรับฉันที่จะเริ่มใช้งานด้วยตัวเอง ความประทับใจแรกจากการทำงานเวอร์ชันแรกๆ คือการได้อยู่ในอีกโลกหนึ่ง เนื้อหาทั้งหมดถูกดาวน์โหลดจาก YouTube แต่นี่ไม่ใช่ YouTube อีกต่อไป แต่เป็นอย่างอื่น ปลอดภัยและควบคุมได้ ราวกับว่าคุณเอาตะขาบออกจากตาแล้วใส่ไว้ในขวดแก้ว และมันคือทั้งหมดที่เกี่ยวกับคำแนะนำ

ที่มา: will.com

เพิ่มความคิดเห็น