「LINEで開く」や「LINEでログイン」がうまく動かないときに知っておきたいこと
みなさんはLINEミニアプリを利用した際に「LINEで開く」ボタンを押してもLINEが起動しなかった、といった経験はありませんか?

また、LINEミニアプリ開発者のみなさんも「Facebookからミニアプリが開けない」という相談を受けたことはないでしょうか。
FacebookやInstagram、XなどのSNSアプリに組み込まれたアプリ内ブラウザでは、この挙動が起きやすい傾向にあります。一見するとLINEミニアプリやLINEの不具合に見えますが、実際にはOSやブラウザ、WebViewの仕様が影響しているケースが少なくありません。
この記事では、こうした現象が起きる背景と、LINEミニアプリ開発者が現実的にできる案内方法を整理します。
なぜ起きるのか
WebページからLINEを開く仕組みにはいくつかの種類があります。
一般にLIFF URLを開いたときの動作や、LINEログインの自動ログインのように、WebページからLINEを開く処理においてはユニバーサルリンクやアプリリンクが利用されます。一方で、ランディングページの「LINEで開く」ボタンのように、カスタムURLスキームが利用されているケースもあります。
いずれの場合も、実際にLINEが起動するかどうかは、ユーザーが利用しているOS、ブラウザ、アプリ内ブラウザの挙動に大きく左右されます。そのため、ページ側の設定に問題がなくても、環境によっては期待どおりにLINEが起動しないことがあります。
結果としてLINEを起動するためのリンクやボタンが適切に設置されていても、LINEアプリが起動せず、そのままブラウザ上でログイン画面が表示されたり、時には画面が全く変化しない場合もあります。
そもそもどうして「LINEが開く」のか
その背景にあるのが「URLをタップしたときに、対応するアプリが入っていればそのアプリを開く」という仕組みです。代表的なのが、iOSのユニバーサルリンクとAndroidのアプリリンクです。
iOSのユニバーサルリンクでは、ウェブサイトとアプリが関連付けられていると、対応するURLをタップした際にSafariを経由せずアプリを開きます。アプリが入っていない場合は、そのままウェブページがブラウザで開きます。詳細はApple公式ドキュメントのUniversal Linksを参照してください。
Androidのアプリリンクも考え方はほぼ同じですが、こちらはウェブサイトとアプリの関連付けを検証したうえで、対応するURLをアプリで開きます。検証に成功したアプリリンクは、通常、アプリ選択ダイアログを表示せずにそのままアプリを開きます。詳細はAndroid DevelopersのApp Linksを参照してください。
開発者目線では、「LINE専用の特別なURLだから開く」というよりも、「通常のURLをOSが見て、対応するアプリを開くかどうかを判断している」と捉えるとわかりやすいでしょう。
LINEミニアプリのランディングページなどで利用されている「LINEで開く」ボタンは、カスタムURLスキームを利用しています。これはユニバーサルリンクやアプリリンクよりも古い仕組みで、URLの形式がline://のように特定のスキームを持つものですが、特定の条件を満たした場合に「乗っ取り攻撃」のリスクがあるため、一般にはユニバーサルリンクやアプリリンクの利用が推奨されています。
詳細については「LINE URLスキームでLINEの機能を使う」を参照してください。
iOSで知っておきたいこと
iOSのユニバーサルリンクは便利ですが、常に無条件でアプリが開くわけではありません。たとえば、Safariで閲覧中のページと同じドメイン名のリンクをタップした場合は、ユニバーサルリンクの設定が適切であってもOSの判断によりSafariでページを開き続けることがあります。
また、URLをブラウザのアドレスバーに直接入力した場合は、ユニバーサルリンクとして扱われず、アプリは開きません。そのため、同じURLでも「リンクをタップした」のか「アドレスバーに入力した」のかで挙動が変わります。ミニアプリのURLを直接アドレスバーに入力してアクセスするユーザーは少ないと考えられますが、知識として知っておくとアプリのテスト時に役に立つかもしれません。
Androidで知っておきたいこと
Androidでは、通常のディープリンクと、検証済みのアプリリンクを区別して考える必要があります。
通常のディープリンクは、条件によってはブラウザやアプリ選択ダイアログが表示されます。一方で、検証済みのアプリリンクは、ウェブサイトの所有者とアプリの対応関係が確認できているため、対応URLをより直接的にアプリへルーティングできます。
特にAndroid 12以降では、アプリがそのドメインでの検証に成功しない限り、一般的なウェブリンクはアプリではなくブラウザで開かれます。LINEをご利用のみなさんが遭遇することはめったにありませんが、古いバージョンのAndroid OSを利用している場合にこのような挙動が起きうることは、開発者のみなさんは知っておくとよいでしょう。
Androidでは、OSのバージョンだけでなく、端末メーカー独自のブラウザ実装やセキュリティ機能がURLの処理に関与することがあります。たとえばSamsungやOPPOのスマートフォンでは、メーカー独自のブラウザやセキュリティアプリ等がURLハンドリングに影響を与えることが知られており、条件が揃った場合にLINEが想定どおりに開かない可能性があります。 このように、Androidでは端末メーカー独自の実装によっても、LINEを開く際の挙動が変化しうることに注意しましょう。
特にアプリ内ブラウザでは起きやすい
Facebook、Instagram、Xなどのアプリ内ブラウザでは、LINEを起動するための仕組みが通常のブラウザほど安定して動作しないことがあります。実際に「LINEで開く」や「LINEでログイン」を実行してもLINEアプリが起動しない、といった報告は多く寄せられています。
このような挙動は、各アプリのWebView実装やアプリ側の仕様に依存する問題であるため、各アプリベンダー(Meta社やX社など)の対応に左右されます。すなわち、LINEアプリ側では予防することができない問題です。
一般的にモバイルアプリのアプリ内ブラウザでは、開こうとしたURLに対して、アプリ側がその遷移を許可するかどうかを制御できます。
たとえばiOSでは、webView(_:decidePolicyFor:decisionHandler:) のような仕組みを応用すれば「LINEを起動するためのURLだけをブロックする」といったこともできます。
実際にSNSアプリがそのような実装をしているかどうかはわかりませんが、アプリ内ブラウザの挙動はアプリベンダー側でコントロールできることは知っておくとよいでしょう。
一方で、同じページをSafari(iOS)やChrome(Android)などの外部ブラウザで開き直すと、正常に「LINEで開く」や「LINEでログイン」を実行できることがよくあります。
SNSアプリに限らず、各アプリ内ブラウザの挙動は、該当のアプリのバージョンやOSの更新によって変わることがあります。あるアプリで常に再現するとは限らず、逆に以前は問題なかった環境で動かなくなることもあります。
開発者ができることは多くありません
上記のように、問題の原因がOSやアプリベンダー側の仕様にある場合、LIFFやLINEログインを利用する開発者ができる対策は限られます。LINEアプリを確実に起動させる方法を、ミニアプリ側だけで完全にコントロールすることは困難です。
そのため、現実的には以下のような対応を検討することになります。
- LINEが起動しない場合は、Safari(iOS)やChrome(Android)などの外部ブラウザでページを開いて再度試すよう案内する
- 外部ブラウザでもサービスを利用できる場合は、LINE起動に失敗してもそのまま利用を継続できる導線を用意する
- iOSではLIFF URLへのアクセス時に、JavaScriptによる自動リダイレクトではなく、ユーザーのタップでログイン処理を開始する
たとえば、ユーザーへの案内としては、次のような短いメッセージが考えられます。
LINEが起動しない場合は、Safari(iOS)またはChrome(Android)でこのページを開いて、もう一度お試しください。
LINEミニアプリやLIFFアプリを提供している場合は、『LINEミニアプリドキュメント』の「外部ブラウザでLINEミニアプリを開く」もあわせて参照してください。
iOSではSafariでも起きることがある
iOSでは、たとえSafariであってもLINEログインの自動ログイン時にユニバーサルリンク経由でLINEを開こうとした際に、まれに自動で起動できないことがあります。
たとえば、LINEを起動するときに「このページをLINEで開きますか」という確認ダイアログが表示されることがありますが、こうした確認で何度か「キャンセル」を選ぶと、その後はLINEが自動で開きにくくなったように感じることがあります。
この挙動はAppleが公式に詳しく説明しているものではなく、ユーザーからの報告をベースに経験的に知られているものです。現時点では、OSがユーザーの選択傾向を考慮して挙動を変えている可能性はあるものの、そのような仕様が開示されているわけではないため、断定は避けるのが適切でしょう。
このような場合は、画面の下にある「LINEアプリでログイン」を長押しし、表示されたコンテキストメニューから[LINEで開く]を選ぶと、正常に起動することがあります。
| 1 | 2 | 3 |
|---|---|---|
![]() | ![]() | ![]() |
何らかの理由でログイン画面を経由したログインが必要なケースでは、この挙動を知っておくと、ユーザーサポートの際に役立つかもしれません。
おわりに
「LINEで開く」や「LINEでログイン」がうまく動かないときでも、LINEミニアプリの実装やLINEログインの組み込み、あるいは起動用リンクやボタンの設置に不備があるとは限りません。原因は、OSやアプリ内ブラウザの仕様にあることがあります。
こうしたケースにおいて、開発者としては「必ず起動させる方法」を探すよりも、起動しない環境があることを前提に、ユーザーへの案内や代替導線を用意することが重要です。
特に、外部サービスやSNSアプリからの流入が多い導線では、SafariやChromeで開き直す案内を事前に用意しておくと、問い合わせ対応もスムーズになるでしょう。


