最近のスマートフォンアプリで良く使われてる”URLスキーマ”による、 Webブラウザからのアプリ立ち上げを実装していたら、うまく動かないケースに遭遇したメモ。 現象 <a href="1hoge://">アプリを起動する</a> アプリを起動する 上記のようにaタグに起動用URLスキーマーの値を設定して、 iPhoneのSafariからリンクをタップしても、相対パスとして扱われ、存在しない別のページへのリンクとなってしまう。 ※リンク押下以外でも、リダイレクト時も同様の挙動となる。 ※safari、その他のブラウザでも同様の挙動。 ※直接URL入力欄に打つと正常にアプリが起動する。 修正方法 URLスキーマの設定値を変更し、先頭文字列を”数字”から”英字”に変更すると、 正常に動作するようになる。 「"1hoge" から ”hoge” に変更」 原因 HTMLの仕様なのか、スキーマの定義と