開発者向けインストールガイド(Pendo Xamarin iOS SDK)

重要:この記事では、SDKを正常にインストールするために必要なAPIキーとスキームIDを含まないコード例を紹介しています。サブスクリプションのPendo管理者は、[サブスクリプション設定(Subscription Settings)]の[アプリの詳細(App Details)]または[アプリの詳細]の[インストール設定(Install Settings)]で、これらの一意のIDにアクセスできます。

 

Pendoはプロダクトの使用データをキャプチャし、ユーザーからのフィードバックを取得し、アプリ内でユーザーとコミュニケーションをとりながら、ユーザーにオンボーディングを促したり、ユーザーを教育したり、価値あるものに導いたりすることができます。Pendoのタグ付けとガイドは完全にコードレスで、エンジニアリングリソースは不要です。ただし、SDKのインストールとアプリにおけるPendoの初期化にはエンジニアの力が必要です。Pendoと一般的なインストールプロセスに関する情報は、導入計画文書(Installation Planning article)に掲載されています。準備をすれば、Pendo SDKの技術的なインストールは簡単です。

Pendoを最初にインストールする際の技術的な部分はSDKだけです。SDKが正しくインストールされれば、誰でもPendoを使うことができます。SDKは、訪問者のアプリ内での行動を追跡し、ガイドを読み込み、セッションのメタデータを取得します。トラックイベントなど、モバイル向けにPendoの使用を最適化および拡張するために、後から追加の開発を行うことが可能です。最新のPendoの機能を使用するには、新しいバージョンがリリースされた際に、モバイルアプリのSDKも更新する必要があります。

Pendoは、他の一般的なCRM、分析、およびコラボレーションツールとのインテグレーションを行っています。インテグレーションの範囲は、コードレスのインストールウィザードによるネイティブインテグレーションから、カスタム開発まで多岐にわたりますが、この記事では説明しません。一般的なインテグレーションについては、インテグレーションに関する記事をご覧ください。また、SDKのインストールが完了した後のサブスクリプションのインテグレーションについては、Pendoの担当者にお問い合わせください。

 

要件

  • モバイルSDK 2.11以降
  • iOS 9.0以降

Pendoの設定と初期化

SDK初期化は、SDKのインポート、Pendoサーバーとの通信のためのSDKのセットアップ、セッションの記録開始の3つで構成されています。Pendoサーバーとの通信設定は、アプリケーションを起動した後に行ってください。接続後、セッションの記録を開始できます。

ユーザーを識別し、データ収集を開始して、ガイドのコンテンツを表示するには、Pendoを初期化する必要があります。SDKは、訪問者が認証され、かつメタデータが既知であるか、匿名の訪問者である場合に初期化できます。セッションの記録は、アプリケーションの起動時、後で訪問者が識別されたとき、または現在の訪問者を識別して新しいセッションを開始する必要があるときに実行できます

識別された訪問者は、定義されたスキーマを使用して、Pendoのメタデータに関連付けられた訪問者オブジェクトとアカウントオブジェクトを作成します。このデータがPendoでどのように定義され、使用されているかについては、訪問者とアカウントのメタデータに関する記事を参照してください。nullまたは""visitorIdとして渡すと、匿名の訪問者IDが生成されます。

  • visitorId - 一意のユーザーIDを含む文字列(例:「user-SFGH-56gh」)。このIDは、他のPendoウェブアプリまたはモバイルアプリの訪問者IDと一致する必要があります
  • accountId - 一意のアカウントID、訪問者の特定の企業またはグループへの所属(例:Acme Inc)を含む文字列。このIDは、他のPendoウェブアプリまたはモバイルアプリの訪問者IDと一致する必要があります
  • visitorData - 訪問者のメタデータ(例:メール、電話、国など)
  • accountData - アカウントのメタデータ(例:種別、レベル、ARRなど)

インストール手順

  1. [設定(Settings)]>[サブスクリプション設定(Subscription Settings)]>[他のアプリを追加(Add Another App)]を選択し、Xamarin iOSアプリタイプを選択します。

    xamarin_ios.png

  2. Pendoでは、2種類のアプリケーション(iOS用およびAndroid用)が[サブスクリプション設定(Subscription Setting)]ページに作成されます。

    xamarin_ios_android.png

  3. アプリを選んで、[インストールに進む(Continue to install)]を選択します。

ステップ1:Pendo Xamarin iOS SDKのインストール

SDKパッケージのインストールは、ビジュアルスタジオのソリューションエクスプローラー(Solution Explorer)を使って行います。ソリューションエクスプローラーでiOSアプリを開き、指示に従ってSDKをインストールします。この作業が完了したら、Pendoを設定して初期化し、ユーザーの識別、データの収集、およびガイドの読み込みを行う必要があります。

  1. Visual Studioソリューションエクスプローラーで、iOSプロジェクトターゲットを右クリックし、[追加(Add)]- >[NuGetパッケージの追加…(Add NuGet Packages…)]を選択します。
  2. Xamarin Forms 5を使用している場合は、pendo-sdk-ios-xamarin-formsを検索します。
    それ以外の場合は、
    pendo-sdk-iOSを検索します。
  3. [パッケージの追加(Add Package)]を押下します。

ステップ2:Pendo SDKのインテグレーション

StartSessionは新しいセッションを開始するとともにデータ収集を開始し、指定されたメタデータを持つガイドを読み込みます。これにより、認証されたユーザーを識別したり、匿名の訪問者に対してランダムな訪問者IDを生成したりできます。StartSessionを再度呼び出すと、現在のセッションが終了して新しいセッションが開始され、データ収集が開始され、渡された新しい訪問者のメタデータを使用してガイドが読み込まれます。

注:StartSessionは現在の訪問者を更新するためにいつでも使用でき、SDKの初期化後に呼び出す必要があります。

 

アプリケーションのAppDelegateクラスを開きます。

AppDelegateクラスのFinishedLaunchingメソッドに、次のコードを追加します。

Xamarin Forms 5を使用している場合は、次のコードを使用します:

PendoFormsを使用する場合;
string appKey = "eyJhbGciOiJSUzI1NiIsImtpZCI6IiIsInR5cCI6IkpXVCJ9.eyJkYXRhY2VudGVyIjoidXMiLCJrZXkiOiJiMmUzNGExNmIxOTdiZjI0YWRkZGU4NWQzYzg1Y2EyZjYwNWMwM2FhYTRhZWMzMTk3YzJiMzFhMzhlNzlmYmI4MzVjZDg0NmNiMDU1ZTA3ODZhNzdmNWM1YjExZjYzNjk2NWE2YjZjNjliNTc3Y2FhMGQ4NTcwZTZjOTAyMmUwNy40NTgzMmZlMzY5MDgxNTQ0ZjNjNGQ1YjgzMDViNzE3ZC5jM2Q4YjJkNGNjNmJhMDZjODRjODNlMWI4Y2M0OTg4ODRhZjIyOWYzZTYzZDc1MmQ1YTk4NGM2MWE3ZWZjN2Y0In0.NUAzwpK26NvaWFJpzUl2GTW_RwrWeUwleM4eKPLfD65PL3KEQQHy4pdX8-T18nmvYK_giir0_1mupSKM0ZR2Mx5r2E6K4UYq0YW4-n8sfLYNjNQGXZASBk07x9-LB2AUhtxaZQvfqi34Yt9r0BW-p6ynAjsXBSxX3hvYggHxoZ4";
PendoManager.Setup(appKey);

それ以外の場合は、次のコードを使用します:

 Pendoを使用する場合;
 string appKey = "eyJhbGciOiJSUzI1NiIsImtpZCI6IiIsInR5cCI6IkpXVCJ9.eyJkYXRhY2VudGVyIjoidXMiLCJrZXkiOiJiMmUzNGExNmIxOTdiZjI0YWRkZGU4NWQzYzg1Y2EyZjYwNWMwM2FhYTRhZWMzMTk3YzJiMzFhMzhlNzlmYmI4MzVjZDg0NmNiMDU1ZTA3ODZhNzdmNWM1YjExZjYzNjk2NWE2YjZjNjliNTc3Y2FhMGQ4NTcwZTZjOTAyMmUwNy40NTgzMmZlMzY5MDgxNTQ0ZjNjNGQ1YjgzMDViNzE3ZC5jM2Q4YjJkNGNjNmJhMDZjODRjODNlMWI4Y2M0OTg4ODRhZjIyOWYzZTYzZDc1MmQ1YTk4NGM2MWE3ZWZjN2Y0In0.NUAzwpK26NvaWFJpzUl2GTW_RwrWeUwleM4eKPLfD65PL3KEQQHy4pdX8-T18nmvYK_giir0_1mupSKM0ZR2Mx5r2E6K4UYq0YW4-n8sfLYNjNQGXZASBk07x9-LB2AUhtxaZQvfqi34Yt9r0BW-p6ynAjsXBSxX3hvYggHxoZ4";
 PendoManager.SharedManager().Setup(appKey);

ログイン、登録など、訪問者が識別されるviewControllerで訪問者のセッションを開始します。

Xamarin Forms 5を使用している場合は、次のコードを使用します:

PendoManager.StartSession(
    visitorId,
    accountId,
    visitorData,
    accountData
);

それ以外の場合は、次のコードを使用します:

PendoManager.SharedManager().StartSession(
    visitorId,
    accountId,
    visitorData,
    accountData
);

visitorId:ユーザーの識別子(例:John Smith)
visitorData : ユーザーのメタデータ(例:メール、電話、国など)
accountId:ユーザーの特定の企業やグループの所属(例:Acme inc.)
accountData:アカウントのメタデータ(例:種別、レベル、ARRなど)

このコードは前回のモバイルセッション(該当する場合)を終了し、新しいモバイルセッションを開始し、提供された情報に基づいてすべてのガイドを取得します。

ヒント:visitorIdとして、nullもしくは""を渡すと、匿名の訪問者IDが生成されます。

 

ステップ3:タグ付けとテストのためのモバイルデバイス接続

Pendoでのアプリケーションのタグ付けとガイドのテストができるようにするには、PendoのURLスキームを追加し、URLスキームを処理するようにアプリを設定して、この設定を完了します。

 

info.plistファイルにPendoのURLスキームを追加します。

1.[アプリターゲット(App Target)]>[情報(Info)]>[URLのタイプ(URL Types)]で、「+」ボタンをクリックして新しいURLを作成します。

2.[識別子(Identifier)]を「pendo-pairing」または任意の名前に設定します。

3. URLスキームにスキームIDを設定します。

  • スキームIDとアプリキーは、[サブスクリプション設定(Subscription Settings)]の[アプリの詳細(App Details)]で参照できます。

openURLを追加または修正します。

Xamarin Forms 5を使用している場合は、次のコードを使用します:

public override bool OpenUrl(UIApplication application, NSUrl url, string sourceApplication, NSObject annotation)
{
  if (url.Scheme.Contains("pendo"))
  {
    PendoManager.InitWithUrl(url.AbsoluteString);
    return true;
  }
    //コードをこちらに挿入...
    return true;
}

それ以外の場合は、次のコードを使用します:

public override bool OpenUrl(UIApplication application, NSUrl url, string sourceApplication, NSObject annotation)
{
  if (url.Scheme.Contains("pendo"))
  {
    PendoManager.SharedManager().InitWithUrl(url);
    return true;
  }
    //コードをこちらに挿入...
    return true;
}

 

ステップ4:インストールの検証

1. Visual Studioを使用してアプリを実行し、デバイスログの中で以下を検索します。

Pendo SDK was successfully integrated and connected to the server.
(Pendo SDKは正常に統合され、サーバーに接続されました。)

2. クリックすると、SDKインテグレーションのための検証プロセスに進みます。

3. サブスクリプション設定に、[インテグレーション済(Integrated)]と示されたアプリが表示されていることを確認します。

XamiOSIntegrated.png

 

追加の設定

Pendo iOS APIドキュメントには、アプリケーションでPendo SDKを設定するための追加の技術情報が記載されています。

 

トラブルシューティング

  • 互換性の問題については、最新のPendoモバイルSDKリリースノートを参照してください。
  • 次のエラーが発生した場合: '-E -IIOJWT - パブリックキーの生成に失敗したため、検証エラーになっています。OSStatus = ....'と表示されたら、以下の手順で対処してください。
    1. Visual Studioエディターで、プロジェクトを右クリックします。
    2. [オプション(Option)]メニューボタンを選択します。
    3. [ビルドカテゴリ(Build category)]リストで、[iOSバンドル署名(iOS bundle signing)]オプションを選択します。
    4. [カスタム資格(custom entitlements)]フィールドの3つの点のボタンを選択します。
    5. 「Entitlements.plist」を選択します。ボックスからファイルを選択し、[OK]ボタンをクリックします。
  • その他のサポートは、こちらをご覧ください。