iOS SDK - リファラー・ショートリンクのサポート

ドキュメント

短いリファラーリンクの作成

ユーザー間のアトリビューションを可能にし、オーガニックな紹介からのアプリのインストールを追跡する、共有可能な短いリファラーリンクを生成します。

バージョン要件この機能を使用するには、SDKバージョン11.0.8以降が必要です。短いリンクは、作成後30日間有効です。

概要

ショートリファラーリンクとは

ショートリンクは、長い、パラメータいっぱいのシンギュラーリンクを、SMS、ソーシャルメディア、アプリ内招待で共有するのに便利な、コンパクトで安全なURLに変換します。

ショートリンクを動的に作成することで、ユーザーがお友達と共有し、アプリのダウンロードや使用を招待することができます。各ショートリンクは参照ユーザーを追跡するので、バイラルの成長を測定し、新規インストールを特定の支持者に帰属させることができます。


実装要件

必要なコンポーネント

ショートリファラーリンクを作成する前に、これらの要素を集めてください:

  • 単一リンク:アプリのダウンロードにユーザーを誘導するベーストラッキングリンク。設定方法については、Singular Links FAQを参照してください
  • 動的パラメータ:リンクにコンテキストを追加するオプションのカスタムパラメータ。トラッキングリンクパラメータで利用可能なオプションを見る
  • リファラー情報:リンクを共有するユーザーの名前と ID を入力して、新規インストールのリファラーへの帰属を可能にします。

SDKメソッド

createReferrerShortLink

カスタムパラメータと成功およびエラー状態用のコールバックハンドラを使用して、短いリファラーリンクを生成します。

メソッドのシグネチャ

+ (void)createReferrerShortLink:(NSString *)baseLink 
                   referrerName:(NSString *)referrerName 
                     referrerId:(NSString *)referrerId 
              passthroughParams:(NSDictionary *)passthroughParams 
              completionHandler:(void(^)(NSString *, NSError *))completionHandler;

パラメータ

  • baseLink:元の Singular トラッキングリンクの URL。
  • referrerName:参照元ユーザーの表示名
  • referrerId:参照元ユーザーの一意な識別子
  • passthroughParams:追加の動的パラメータを含む NSDictionary (オプション)
  • completionHandler:短いリンク文字列とエラーパラメータを含むコールバックブロック

使用例

カスタムパラメータでショートリンクを作成し、完了ハンドラで共有ロジックを実装します。

SwiftObjective-C
// Define your Singular tracking link as the base link
let referrerBaseLink = "https://yourdomain.sng.link/Csfge/aknl?_dl=myscheme%3A%2F%2Fmydeeplink/referrer&_smtype=3"

// Get referrer information from user input
let referrerID = referrerIDField.text ?? "unknown_user"
let referrerName = referrerNameField.text ?? "Anonymous"

// Add custom passthrough parameters
let passthroughParams: [String: Any] = [
    "channel": "sms",
    "campaign_id": "summer_promo_2025",
    "referral_type": "friend_invite"
]

// Generate the short referrer link
Singular.createReferrerShortLink(
    referrerBaseLink,
    referrerName: referrerName,
    referrerId: referrerID,
    passthroughParams: passthroughParams
) { shortLink, error in
    
    if let error = error {
        // Handle error - retry or show user feedback
        print("Error creating short link: \(error.localizedDescription)")
        
        // Show error message to user
        let alert = UIAlertController(
            title: "Error",
            message: "Failed to create share link. Please try again.",
            preferredStyle: .alert
        )
        alert.addAction(UIAlertAction(title: "OK", style: .default))
        self.present(alert, animated: true)
        return
    }
    
    if let shortLink = shortLink, !shortLink.isEmpty {
        // Share the short link via iOS Activity Controller
        let shareText = "Join me on this awesome app! \(shortLink)"
        let activityVC = UIActivityViewController(
            activityItems: [shareText],
            applicationActivities: nil
        )
        
        // For iPad: set popover presentation controller
        if let popover = activityVC.popoverPresentationController {
            popover.sourceView = self.view
            popover.sourceRect = CGRect(x: self.view.bounds.midX, 
                                       y: self.view.bounds.midY, 
                                       width: 0, 
                                       height: 0)
            popover.permittedArrowDirections = []
        }
        
        self.present(activityVC, animated: true)
    }
}

実装のベストプラクティス

エラーハンドリング

ネットワーク障害、無効なパラメータ、またはサーバーの問題を管理するために、完了ハンドラで堅牢なエラー処理を実装します。

  • 再試行ロジック:一過性のネットワークエラーに対する指数関数的バックオフを実装する。
  • ユーザーフィードバック:リンク作成失敗時に明確なエラーメッセージを表示
  • フォールバック・オプション:代替共有方法の提供(例:短いリンク作成に失敗した場合、完全なシンギュラーリンクを共有する
  • 検証:問題を早期に発見するために、createReferrerShortLink を呼び出す前にパラメータを検証します。

トラッキングと分析

リファラー情報を活用して、バイラルループを構築し、オーガニックな成長を測定する。

ベストプラクティス社内のユーザー識別システムと一致する一貫したリファラーIDを使用する。これにより、次のことが可能になります:

  • 新規インストールを特定の参照ユーザーに帰属させる。
  • 紹介に成功したユーザーに報酬を与える
  • バイラル係数とKファクターメトリクスの追跡
  • 最も価値のあるブランド支持者を特定

リンクの有効期限

共有戦略において、30日間のリンクライフサイクルを計画する。

重要:ショートリンクは30日で失効します。長期的なキャンペーンや永続的な共有機能の場合は、定期的に新しいショートリンクを生成するか、予備として完全なシンギュラーリンクを使用してください。


一般的な使用例

アプリ内紹介プログラム

パーソナライズされた紹介リンクを使って、ユーザーがアプリから直接友達を招待できるようにします。

  • 報酬システム:紹介者を追跡し、友達登録に成功したユーザーに報酬を与えます。
  • ソーシャル共有:メッセージ、メール、ソーシャルメディア用のiOSアクティビティコントローラと統合します。
  • パーソナライズされた招待:パーソナライズするために、紹介者の名前を共有メッセージに含めることができます。

ユーザー生成コンテンツ

ユーザーが他のユーザーと共有したいコンテンツを作成すると、共有可能なリンクを作成します。

  • コンテンツのアトリビューション:どのコンテンツが最もアプリのインストールを促進したかを追跡
  • クリエイターの認識:新規ユーザーをコンテンツ作成者に帰属させ、ゲーミフィケーションを実現します。
  • キャンペーンタグ付け:コンテンツの種類やカテゴリーに基づいた動的なパラメータを追加

イベント招待

どの出席者が新規ユーザーを連れてきたかを追跡するイベント招待用のユニークなリンクを生成します。

  • イベントコンテキスト:リンクパラメータにイベントIDと詳細を含める
  • 参加者のトラッキング:イベントからイベントへのバイラル拡散を測定
  • ネットワーク効果:コンバージョン率の高いイベントを特定