Help us understand the problem. What is going on with this article?

TwitterでYouTubeアプリを起動する

女子中学生4人がプログラミング(?)を勉強するYouTubeチャンネルを運営しています。
image.png

遊んでるだけのことが多いですが...リンクはこちら。
https://youtu.be/YGi6O8SrwRs

なかなかプログラミング関連の検索ってYouTube内部から取れないので、
結構Twitterでの告知だのみになってしまっているのですが、
iPhone、Androidの場合、TwitterアプリでYouTubeのリンクをクリックすると、アプリ内ブラウザが起動してしまうんですよね...。
これだと、
Twitter内ブラウザでYouTubeにログインしている人は少ない
ので、
チャンネル登録・高評価・コメントができない
というデメリットが。

URLスキームで飛ばしちゃったほうが、絶対いい気がしますよね。
なので、簡単なスクリプトを作りました。

    var youtube = "https://www.youtube.com/"
    function loadYouTube(key){
      location.href = youtube+ "watch?v="+key;
    }
    var name = "key".replace(/[\[\]]/g, "\\$&");
    var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"),
    res = regex.exec(window.location.href);
    if(!res || !res[2]){
      location.href = youtube;
    }else{
      var key  = decodeURIComponent(res[2].replace(/\+/g, " "));
      var ua = navigator.userAgent;
      if(ua.indexOf('iPhone') > 0 || ua.indexOf('iPad') > 0 || ua.indexOf('iPod') > 0 || ua.indexOf('Android') > 0 && ua.indexOf('Mobile') > 0){
        location.href = "vnd.youtube://"+key;       
        setTimeout(loadYouTube.bind(this,key), 500);
      }else{
        loadYouTube(key);
      }
    }

これで、?key=(videoID)でアクセスすれば、
・iOS=アプリ起動確認→YouTube
・Android=→YouTube
・PC=→ブラウザで開く(普通)
という挙動になります。

[デモ]こんなかんじ。(スマホじゃないとあんまりわかんないかも)
https://programming-girls.com/y.html?key=YGi6O8SrwRs

生成するためのサイトも作ってみました。
https://programming-girls.com/ygenerator.html
サーバーが用意できない方とかは勝手に使ってもらってもぜんぜんオッケー🙆‍♂️
(でも、チャンネル登録してほしい)
ではー。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした