iOS初期設定

概要:アプリの初期設定では、既存のアプリユーザーを直接アプリに遷移させるためのリンクをマーケティング担当者が作成できます。また、初期設定はディープリンクとディファードディープリンクの前提となるものです。

アプリ起動メソッド

ユーザーベースを十分に網羅するためには、実装する必要のあるアプリ起動メソッドは2つあります。使用する方法は、モバイルプラットフォームのバージョンによって異なります。

この2つの方法と実装方法については、次のセクションで詳しく説明します。

メソッド詳細iOSバージョン手順
ユニバーサルリンクデフォルトのアクティビティ(アプリのホーム画面)を直接起動します。Universal Linksは通常のWebリンクの形式を採用します。
例:https://yourbrand.onelink.me または https://www.yourbrand.com
iOS 9以上
  1. アプリバンドルIDとプレフィックスIDを取得してください。
  2. Associated Domainを有効にしてください。
URIスキームURIスキームで指定されたアクティビティパスに基づいて、アプリを直接開きます。iOS全てのバージョン
  1. マーケティング担当者と一緒にURIスキームを決めてください。
  2. Adding URI scheme.
  3. テスト

iOSユニバーサルリンクの手順

Getting the app bundle ID and prefix ID

  1. Apple Developerアカウントにログインしてください。
  2. 左側のメニューで Certificates, Identifiers & Profiles(証明書、識別子、プロファイル)を選択します。
  3. Identifiers (識別子) で、App IDs (アプリID) を選択してください。
  4. 該当するアプリをクリックしてください。
  5. プレフィックスIDとアプリバンドルIDをコピーしてください。
  6. プレフィックスIDとアプリバンドルIDをマーケティング担当者に渡してください。マーケティング担当者は、AppsFlyerダッシュボードでこれを使用してアプリを登録します。
    certs_apple_info!

Enabling associated domains

Associated Domainをアプリでサポートする方法

Follow the iOS instructions to add the associated domains entitlement to your app.

Configuring mobile apps to register approved domains

承認されたドメインを登録するためのモバイルアプリの設定は、Xcode内で行われます。この作業には、マーケティング担当者が生成するOneLinkのサブドメインが必要です。

承認されたドメインを登録するようにモバイルアプリを設定する方法

  1. マーケティング担当者からOneLinkのサブドメインを入手してください。
  2. Xcodeでプロジェクトをクリックします。
  3. プロジェクトターゲットをクリックします。(参照:次のスクリーンショットを参照)
  4. Capabilities (機能) タブに切り替えます。
  5. Associated Domainをオンにしてください。
  6. Add the subdomain that you got from your marketer.
    The format is applinks:subdomain.onelink.me.

xcode-associated-domains!

📘

To associate a domain with your app, you need to have the associated domain file on your domain and the appropriate entitlement in your app. Once the redirection logic for existing app users is added to the OneLink template configuration, AppsFlyer hosts the apple-app-site-association file.
When a user installs your app, the system attempts to download the associated domain file and verify the domains in your Associated Domains Entitlement.

Universal Link limitations

ブラウザからアプリの起動

Universal Linksは、クリックされた場合にのみ動作します。たとえば、Webページやメールのリンクをクリックする場合などです。ブラウザのアドレスバーにリンクを貼り付けた場合、アプリにディープリンクされません。

OneLinkサブドメイン

OneLinkサブドメインはいつでも変更できますが、これによって、元のサブドメインを使用する既存のOneLink URLすべての動作が停止されます。

ソーシャルアプリ内でのOneLink

ソーシャルネットワークアプリを含むすべてのアプリが、ユニバーサルリンクをサポートしているとは限りません。詳細については、こちらのガイドを参照してください。

その他の制限と問題

ユニバーサルリンクには、他の制限事項が適用される場合があります。詳細はOneLinkトラブルシューティングを参照してください。

URIスキームの手順

URIスキームとは、ユーザーを直接モバイルアプリに誘導するURLです。

アプリユーザーがブラウザのアドレスバーボックスにURIスキームを入力したり、URIスキームに基づくリンクをクリックしたりすると、アプリが起動し、ユーザーはディープリンクされます。

ユニバーサルリンクでアプリが開けないときは、そのURIスキームをフォールバックとして使ってアプリを開くことができます。

Deciding on a URI scheme

URIスキームを決定する方法:

  1. Contact the marketer.
  2. URIスキームを選択します。例: yourappname://

📘

  • エコシステム内の他のアプリとの重複を避けるために、アプリやブランドにできるだけユニークな URI スキームを使用します。他のアプリとの重複は、URI スキームプロトコルの性質上の本質的な問題です。
  • URI スキームは、httpまたは httpsで始まらないようにしてください。
  • URIスキームは、AndroidとiOSで同様に定義する必要があります。
  1. URIスキームをマーケティング担当者に送信してください。例: afshopapp://mainactivity.

Adding URI scheme

URIスキームの追加方法:

  1. XCodeで、アプリ情報のplistファイルを開きます。
  2. URL typesエントリーを追加してください。
  3. URL typeItem 0 列を展開してください。
  4. URL識別子に使用するアプリ特有の識別子を値として追加してください。
    他のアプリで使用される可能性のない固有の識別子を選択することを推奨します。
  5. URL identifier を右クリックして、Add Row > URI Schemesを選択してください。
  6. Item 0 値に独自のユニークなスキームを設定してください。

info_list_uri_schemes!

Prerequisites:

アプリがインストールされているiOS端末をご用意ください。
Universal LinksやURIスキームが実装されたアプリのソースとバージョンであることを確認してください。

Testing the URI scheme:

  1. マーケティング担当者に連絡し、彼らが作成したカスタムリンクを取得してください。
  2. マーケティング担当者から取得したショートまたはロングURLを自分の携帯電話に送信してください。次のいずれかを実行できます:
    • お使いの携帯電話のカメラまたは QR スキャナーアプリで QR コードをスキャンします。
    • リンクを自分宛てにメールまたはWhatsAppで送信し、自分の端末で開きます。
  3. モバイル端末のリンクをクリックします。 アプリのホーム画面が開きます。

If the link doesn't open the app, add the parameter af_force_deeplink=true to the custom attribution link. For example:

https://demo.onelink.me/1aBC/123ab45c?af_force_deeplink=true

URI scheme limitations

AppleまたはGoogleのいずれも、アプリスキームの固有名称を強制しません。さまざまなアプリケーションでスキームが重複することを回避するために、ブランド固有のスキーム名を選択してください。推奨されるスキーム名は、アプリのバンドルIDなどです。例:com.company.app 

OneLinkでiOSとAndroidの両方に対応するには、両方のプラットフォームに対して同じスキームが定義されていることが重要です。

When a OneLink that has af_force_deeplink=true is opened in iOS 12.3.1, the following logic applies:

  • アプリがインストールされているかどうかを尋ねるダイアログが表示されます。
    • ユーザーがOK(アプリがインストールされている)を選択すると、AppsFlyerはURIスキームを使用してアプリを開こうとします。
    • ユーザーがキャンセル(アプリがインストールされていない)を選択した場合、AppsFlyerはユーザーをアプリストアにリダイレクトします。
    • 仮にユーザーがOKを選択するもアプリがインストールされていなかった場合には、エラーメッセージが表示されます:

uri_cannot_open_page!