HTML
JavaScript
iOS9

[iOS9] カスタムURLスキームで起動に失敗する(呼び出し元)

More than 3 years have passed since last update.

カスタムURLスキームでアプリを起動する際にハマったのでメモ


前提・状況


  • iOS8では問題なく起動できている

  • アプリがインストールされていない場合はAppStoreに移動する

  • iOS9にアップデートしたらカスタムURLスキームで起動していたアプリが起動できなくなった

  • アプリ側でiOS9でカスタムURLスキームの遷移に失敗するときの注意点を参考に、対応は済んでいるか確認


    • →対応済み。起動用サンプルHTMLからは問題なく起動できる。




現象、原因・対策



  1. そもそも起動しない


    • 原因


      • 起動用サンプルHTMLのリンクをそのまま本番用ページに貼り付けても反応しない

      • FRAMESETで読み込まれるページから呼び出していたことが原因

      • まだ試していないがおそらくiframeもダメではないかと



    • 対策


      • 起動ページ自体を別のタブで開いておくように変更






  2. アプリがインストールされていてもAppStoreに移動してしまう


    • 原因


      • アプリ起動ボタン押下後、300ms経過した場合AppStoreに移動するようにしていた

      • iOS9からアプリを開く際にダイアログが表示されるようになった

      • アプリがインストールされていても、人間の操作が間に合わないためAppStoreに移動してしまう



    • 対策


      • ひとまず自動でAppStoreに移動する処理は無効化

      • 予めアプリをダウンロードしておく旨を記載し、別のボタンでAppStoreへ誘導する