メインコンテンツにスキップ

モバイルアプリにIntercomをインストールして使用する

Intercomによるオンボーディングとサポート体験で、モバイルアプリのusersとエンゲージしましょう。

対応者:Beth-Ann Sher

iOSまたはAndroidアプリにIntercomをインストールして、usersが誰かを確認し、あらゆる接点でつながりましょう。

すべてusersがアプリを離れることなく行えます。


モバイルアプリにIntercomをインストールして設定する方法

iOS、Android、React Native、Cordova向けのネイティブSDKを使えば、モバイルアプリへのIntercomインストールは数分で完了します。

注意:最新のMessengerは最低SDKバージョンが必要です。現在の最低必要バージョンはiOSAndroidのリリースノートでご確認ください。

モバイルアプリにIntercomをインストールする際は、usersに関する追跡したいカスタムデータを設定してください。これにより、よりターゲットを絞ったパーソナライズされたメッセージやカルーセルを送信できます。

あなたまたは開発者は、開発者向けドキュメントで設定方法を確認できます。

SDKは小さく、アプリの動作を遅くしません。👌

プラットフォーム選択

Channels > Messenger > Installページでは、Messengerをウェブ環境にインストールするかモバイル環境にインストールするかを選択します。

Install for webを選ぶとウェブサイト向けのインストール手順が表示され、Install for mobileを選ぶとモバイルアプリ向けの新しいインストール手順が表示されます。👇

モバイルのステータスは、AndroidまたはiOSがインストールされていなければ「Not installed」、両方インストールされていれば「Securely installed」と表示されます。

モバイルアプリにMessengerをインストールするには、3つのステップを完了する必要があります。

Messengerの初期インストール

iOS、Android、またはReact Nativeのいずれかのインストールプラットフォームを選択してください。選択したプラットフォームごとに特有の手順があります。

モバイルアプリにIntercomをインストールする方法と、インストールを助けるコードスニペットのオプションが提供されます。iOS向けのコードスニペットオプションは以下の通りです。

  1. Swift Package Manager

  2. Cocoapods

  3. 手動インストール

Android向けのコードスニペットオプションは以下の通りです。

  1. Groovy

  2. Kotlin

注意:Messengerのモバイルインストールには「Enable user traffic for messenger」トグルが必須です。

React Native向けのコードスニペットオプションは以下の通りです。

  1. Yarn

  2. NPM

  3. Expo

次のステップは、モバイルアプリのコードベース内で「Intercomの初期化」を行うことです。このステップでAPIキーの管理も可能です。iOS向けのコードスニペットオプションは以下の通りです。

  1. Swift

  2. Swift UI

  3. ObjectiveC

Android向けのコードスニペットオプションは以下の通りです。

  1. Kotlin

  2. Java

React Nativeの選択肢は以下の通りです。

  1. iOS

  2. Android

最後のインストール確認ボタンは、Messengerが正常に検出された場合は成功通知を表示し、問題があればその旨を示します。

注意:モバイルアプリをMessenger APIに接続する際は、エンドポイントがワークスペースのデータホスティング地域と一致していることを確認してください。米国ホストのワークスペースは標準APIエンドポイント(URLに「eu」が含まれない)を使用し、EUホストのワークスペースはEUエンドポイントを使用してください。誤ったエンドポイントを使用すると404エラーが発生します。

JWTを使ったMessengerのセキュリティ強化

最近、Messengerのセキュリティ機能をHMACの代わりにJSONウェブトークン(JWT)を使うよう改善しました。このアップデートは以前のIdentity Verification (IdV)方式を置き換え、ユーザーデータ保護のための機能を提供します。

JWTの利点は以下の通りです。

データ保護 — ユーザーIDとメール、さらにあらゆるユーザー属性に署名し保護します。

短命トークン — JWTは有効期限を設定でき、トークンの不正使用リスクを減らします。

JWTでMessengerを保護するには、iOSまたはAndroidをこちらで選択し、指示に従ってください。

注意: React NativeではJWTサポートがまだリリースされていないため、Identity Verificationを使用し続ける必要があります。

Identity VerificationによるMessengerのセキュリティ強化【非推奨】

モバイルでのIdentity Verificationは設定 > インストール > モバイル用インストールに移動し、iOS、Android、またはReact Nativeのインストールプラットフォームを選択してください。

初期インストールのステップと同様に、React Native SDKをどのプラットフォーム(iOSまたはAndroid)でインストールするか選択を求められます。

バックエンドコード内でHMACコード(ハッシュベースメッセージ認証コード)を生成し、Intercom Messengerに提供する方法のコードスニペットと説明が提供されます。このHMACコードはMessenger内のユーザー操作の正当性を検証するために使われます。

Intercomをモバイルアプリで初期化する際にHMACを含めるための追加コードスニペットが提供されます。iOS向けのコードスニペットオプションは以下の通りです。

  1. Swift

  2. Swift UI

  3. ObjectiveC

Android向けのコードスニペットオプションは以下の通りです。

  1. Kotlin

  2. Java

React Native向けには、Identity VerificationでIntercomを初期化するためのHMACコード使用例のコードスニペットを提供しています。

Identity Verificationプロセスの最終ステップは、Identity Verificationを強制することです。これにより、有効なHMACコードを含まないMessengerからのすべてのリクエストは拒否されます。

注意:iOSまたはAndroidアプリでIdentity Verificationを強制すると、2番目のステップが完了済みとしてマークされます。


⚠️ ユーザーログアウト時にセッションを終了してください。

ユーザーがアプリからログアウトした際に、Intercomをシャットダウンして会話をクリアすることを確実に行ってください。

Objective Cでの方法はこちらです。

- (void)logout { [Intercom logout]; }

Javaでの方法はこちらです。

private void logout() { 
Intercom.client().logout();
}

注意:識別されたユーザーのみログアウトしてください。識別されていないユーザーをログアウトすると、将来マージできない孤立したレコードが発生します。

Intercomはアプリがバックグラウンドに入ったり再起動したりすることを認識しているため、再度ログインする必要はありません。

詳細はiOSおよびAndroidの開発者ドキュメントをご覧ください。

オプション:プッシュ通知の設定

このステップでもインストールプラットフォーム(iOSまたはAndroid)を選択できます。このセクションでプッシュ通知を設定できますが、設定手順の案内はありません。プッシュ通知の設定には開発者ドキュメントを参照してください。

注意:React Nativeはモバイルプッシュ通知のオプションとして提供されていません。

注意:プッシュ通知がiOSまたはAndroidアプリで設定されていると、このオプションのステップは完了済みとマークされます。

重要: Intercom iOS SDK v13.0.0+のビルドにはXcode 14が必要です。

Xcode 14ではSDKインストール時にコンソールにいくつかの警告が表示されます。これらの警告はIntercomのWKWebView使用に起因し、Xcode 14のバグによるもので、Intercom側で修正できる問題ではありません。

これらは単なる警告であり、警告があってもIntercomは通常通り動作します。

警告メッセージは以下の通りです。

  1. WKWebView Error - 記事を表示し、コンソールに次のエラーが表示されます: Error acquiring assertion: <Error Domain=RBSServiceErrorDomain Code=1 "target is not running or doesn't have entitlement com.apple.runningboard.assertions.webkit" UserInfo={NSLocalizedFailureReason=target is not running or doesn't have entitlement com.apple.runningboard.assertions.webkit}>

  2. このメソッドはUIの応答性低下を招く可能性があるため、メインスレッドで呼び出すべきではありません。

  3. [Sandbox] Mach bootstrapを有効にできませんでした、errno = 22。


モバイルアプリにHelp Centerを深く統合する

モバイルアプリに直接Articles Help Centerを組み込むことで、usersにヘルプコンテンツを柔軟に提供できます。Intercomの既成UIを使うか、独自のカスタム表示を開発するかにかかわらず、顧客に必要なサポートを正確に提供できます。


usersの会話を安全に保つ

繰り返しますが、iOSおよび/またはAndroidアプリでMessenger Securityを有効にすることを強く推奨します。これにより、あなたとusers間の会話がプライベートに保たれ、他のユーザーがなりすますことを防ぎます。

設定方法の詳細はヘルプセンターのドキュメントまたはセキュリティ設定をご覧ください。モバイル向けの手順は、iOSおよびAndroidの開発者ドキュメントをご参照ください。

こちらの回答で解決しましたか?