この記事では、KARTE for Appで配信される各種のポップアップ/アプリPUSH通知でのリンク先の制御方法について説明します。
基本的な挙動
- KARTE for Appで配信される各種のポップアップ/アプリPUSH通知では、KARTE管理画面上でリンク先のURLやdeeplinkの文字列を設定可能です。
- このポップアップ/アプリPUSH通知が配信され、ユーザーが当該のリンクをタップした場合には(aタグのhref要素としてリンクが設定されていた場合)、当該のリンク先文字列についてアプリもしくはOS側に処理を委譲しています
- リンクとしてURLや自社アプリのdeeplinkが設定されている場合、KARTE SDK自体では基本的にリンク遷移についての制御は行っていません
- 詳細な挙動についての説明は下記ドキュメントをご確認ください
iOSでの挙動
ポップアップ(iOS)
詳細はドキュメントをご確認ください。
ポップアップでのデフォルトの挙動(iOS)
ポップアップの配信箇所 | http://, https:// から始まるURLを受け取った際の挙動 | それ以外のスキームのURLを受け取った際の挙動 |
---|---|---|
アプリ (source=native_app_sdk) |
Safari等のブラウザが起動します。 Universal Linksが設定されている場合でもデフォルトではSafariが開くため、アプリ内で遷移させたい場合は対応が必要です。 |
スキームに対応するアプリケーションが起動します(SDKでは遷移先を制御していません)。 アプリ側でDeepLinkによる画面遷移を実装していれば、アプリ内の任意画面への遷移は可能です。 |
アプリ内Webview (source=native_app_webview) |
Webview上での他のリンク遷移と同様の挙動です。 | Webview上での他のリンク遷移と同様の挙動です。 |
ポップアップでの各種リンク先の制御方法(iOS)
ポップアップの配信箇所 | 遷移させたい先 | 実現方法 |
---|---|---|
アプリ (source=native_app_sdk) |
アプリ内 | 遷移先に応じた任意のdeeplinkを接客アクションのリンク先に設定した上で、アプリ内でリンクを受け取った際の挙動を適切に実装する必要があります。 ※アプリ上の特定画面に遷移させたい場合は別途アプリ側で実装が必要です。 参考 |
アプリ (source=native_app_sdk) |
アプリ内Webview | 遷移先に応じた任意のdeeplinkを接客アクションのリンク先に設定した上で、アプリ内でリンクを受け取った際の挙動を適切に実装する必要があります。 ※アプリ上の特定画面に遷移させたい場合は別途アプリ側で実装が必要です。 参考 |
アプリ (source=native_app_sdk) |
ブラウザ | デフォルトの挙動では、http://, https://から始まるURLを設定することでブラウザが起動します。 |
アプリ内Webview (source=native_app_webview) |
アプリ内 | deeplinkでアプリを起動できるリンクを設定します。 ※アプリ上の特定画面に遷移させたい場合は別途アプリ側で実装が必要です。 もしくはUniversal Linksを設定した上でアプリが起動できるURLを設定します。 |
アプリ内Webview (source=native_app_webview) |
アプリ内Webview | Webview上での他のリンク遷移と同様の挙動になるため、それに準じた設定が必要です。 接客に指定したURLスキームで同WebView内の別Webページに遷移できない場合は、別途OS毎にWebview内でリンク遷移した際の実装が必要です。 https://support.karte.io/post/5p11ldZv1FiG7KAGtuO8y1 |
アプリ内Webview (source=native_app_webview) |
ブラウザ | Webview上での他のリンク遷移と同様の挙動になるため、それに準じた設定が必要です。 接客に指定したURLスキームでブラウザが起動しない場合は、別途OS毎にWebview内でリンク遷移した際の実装が必要です。 https://support.karte.io/post/5p11ldZv1FiG7KAGtuO8y1 |
アプリPUSH通知(iOS)
詳細はドキュメントをご確認ください。
アプリPUSH通知でのデフォルトの挙動(iOS)
リンクの種類 | 挙動 |
---|---|
http://, https:// から始まるURL | Safari等のブラウザが起動します。 Universal Linksを設定している場合でもデフォルトではsafariが起動するため、アプリ上へ遷移させたい場合はアプリ側でのハンドリングが必要です。 https://developers.karte.io/docs/appendix-universal-links-ios-sdk-v2 |
それ以外のスキームのURL | スキームに対応するアプリケーションが起動します。 (SDKでは基本的に遷移先を操作していません) アプリ側でプッシュ通知開封時の処理を実装していれば、アプリ内の任意画面に遷移は可能です。 |
アプリPUSH通知での各種リンク先の制御方法(iOS)
遷移させたい先 | 実現方法 |
---|---|
アプリ内 | アプリ内でDeepLinkによる画面遷移と、プッシュ通知開封時の処理の実装が必要です。 Universal Linkにも対応する場合は、こちらの実装が必要です。 |
アプリ内Webview | アプリ内の場合と同様です。 |
ブラウザ | http://,https:// から始まるURLを設定します。 (上記パターンのURLでのデフォルト挙動としてブラウザが起動します) |
Androidでの挙動
ポップアップ(Android)
詳細はドキュメントをご確認ください。
ポップアップでのデフォルトの挙動(Android)
ポップアップの配信箇所 | http://, https:// から始まるURLを受け取った際の挙動 | それ以外のスキームのURLを受け取った際の挙動 |
---|---|---|
アプリ (source=native_app_sdk) |
Chrome等のブラウザが起動します。 | スキームに対応するアプリケーションが起動します。 (SDKでは遷移先を操作していません) アプリ側でインテント呼び出しに応じて起動するActivityを実装していれば、アプリ内の任意画面に遷移は可能です。 |
アプリ内Webview (source=native_app_webview) |
Webview上での他のリンク遷移と同様の挙動です。 | Webview上での他のリンク遷移と同様の挙動です。 |
ポップアップでの各種リンク先の制御方法(Android)
ポップアップの配信箇所 | 遷移させたい先 | 実現方法 |
---|---|---|
アプリ (source=native_app_sdk) |
アプリ内 | 遷移先に応じた任意のdeeplinkを接客アクションのリンク先に設定した上で、アプリ内でリンクを受け取った際の挙動を適切に実装する必要があります。 ※アプリ上の特定画面に遷移させたい場合は別途アプリ側で実装が必要です。 参考 |
アプリ (source=native_app_sdk) |
アプリ内Webview | 遷移先に応じた任意のdeeplinkを接客アクションのリンク先に設定した上で、アプリ内でリンクを受け取った際の挙動を適切に実装する必要があります。 ※アプリ上の特定画面に遷移させたい場合は別途アプリ側で実装が必要です。 参考 |
アプリ (source=native_app_sdk) |
ブラウザ | デフォルトの挙動では、http://, https://から始まるURLを設定することでブラウザが起動します。 |
アプリ内Webview (source=native_app_webview) |
アプリ内 | deeplinkでアプリを起動できるリンクを設定します。 ※アプリ上の特定画面に遷移させたい場合は別途アプリ側で実装が必要です。 |
アプリ内Webview (source=native_app_webview) |
アプリ内Webview | Webview上での他のリンク遷移と同様の挙動になるため、それに準じた設定が必要です。 接客に指定したURLスキームで同WebView内の別Webページに遷移できない場合は、別途OS毎にWebview内でリンク遷移した際の実装が必要です。 https://support.karte.io/post/5p11ldZv1FiG7KAGtuO8y1 |
アプリ内Webview (source=native_app_webview) |
ブラウザ | Webview上での他のリンク遷移と同様の挙動になるため、それに準じた設定が必要です。 接客に指定したURLスキームでブラウザが起動しない場合は、別途OS毎にWebview内でリンク遷移した際の実装が必要です。 https://support.karte.io/post/5p11ldZv1FiG7KAGtuO8y1 |
アプリPUSH通知(Android)
詳細はドキュメントをご確認ください。
アプリPUSH通知でのデフォルトの挙動(Android)
リンクの種類 | 挙動 |
---|---|
http://, https:// から始まるURL | Chrome等のブラウザが起動します。 ※Android11以降では、アプリ側でhttp://, https://始まりのURLを開くために、別途追加の実装が必要になることがあります https://developers.karte.io/docs/notification-android-sdk-v2#2-通知の表示処理を実装する |
それ以外のスキームのURL | スキームに対応するアプリケーションが起動します。 (SDKでは基本的に遷移先を操作していません) ※Android11以降では、別途追加の実装が必要になることがあります https://developers.karte.io/docs/notification-android-sdk-v2#2-通知の表示処理を実装する |
アプリPUSH通知での各種リンク先の制御方法(Android)
遷移させたい先 | 実現方法 |
---|---|
アプリ内 | 遷移先に応じた任意のdeeplinkを接客アクションのリンク先に設定した上で、アプリ内でリンクを受け取った際の挙動を適切に実装する必要があります。 ※アプリ上の特定画面に遷移させたい場合は別途アプリ側で実装が必要です。 |
アプリ内Webview | アプリ内の場合と同様です。 |
ブラウザ | http:// https:// から始まるURLを設定します。 (上記パターンのURLでのデフォルト挙動としてブラウザが起動します) ※Android11以降では、アプリ側でhttp://, https://始まりのURLを開くために、別途追加の実装が必要になることがあります https://developers.karte.io/docs/notification-android-sdk-v2#2-通知の表示処理を実装する |