現在表示中:

重要な通知を AEM Mobile アプリユーザーに即座に警告できることは、モバイルアプリとそのマーケティングキャンペーンの価値にとって重要です。ここでは、アプリがプッシュ通知を受信するために必要な手順と、AEM Mobile から電話にインストールされたアプリへのプッシュの設定と送信の方法について説明します。また、プッシュ通知にディープリンク機能を設定する方法についても説明します。

注意:

プッシュ通知は保証型配信ではありません。むしろお知らせに近いものです。全ユーザーがプッシュ通知を受信するように最大限の努力が払われていますが、保証型配信メカニズムではありません。また、プッシュの配信時間は 1 秒未満から最大 30 分までとさまざまです。

AEM でプッシュ通知を使用するには、さまざまなテクノロジーがいくつか必要になります。まず、通知およびデバイスを管理するために(AEM は現時点ではこれを行いません)、プッシュ通知サービスプロバイダーを使用する必要があります。Amazon Simple Notification Service(SNS)と Pushwoosh の 2 つのプロバイダーが、初期設定で AEM ですぐに使用できるように設定されています。次に、指定したモバイル OS 向けのプッシュテクノロジーは、適切なサービスである Apple のプッシュ通知サービス(APNS。iOS デバイス用)、Google Cloud Messaging(GCM。Android デバイス用)を経由する必要があります。AEM は、これらのプラットフォーム固有のサービスと直接には通信しませんが、これらのサービスがプッシュを実行するために、AEM は通知とともに関連する設定情報を提供する必要があります。

インストールおよび設定(下記)が完了すると、次のように機能します。

  1. プッシュ通知が AEM に作成されて、サービスプロバイダー(Amazon SNS または Pushwoosh)に送信されます。
  2. サービスプロバイダーが、プッシュ通知を受信してコアプロバイダー(APNS または GCM)に送信します。  
  3. コアプロバイダーが、プッシュ通知を受け取るように登録されているすべてのデバイスに通知をプッシュします。コアプロバイダーは、デバイスごとに、携帯電話のデータネットワークまたは WiFi のうち、現在デバイスで使用可能になっている方を使用します。
  4. 通知用に登録されているアプリが実行中でない場合、通知はデバイスに表示されます。ユーザーが通知をタップすると、アプリが起動し、アプリ内に通知が表示されます。アプリケーションが既に実行中の場合は、アプリ内通知のみが表示されます。

AEM のこのリリースでは、iOS と Android のモバイルデバイスをサポートしています。

概要および手順

AEM Mobile アプリでプッシュ通知を使用するには、次のおおまかな手順を実行する必要があります。

通常、AEM 開発者は次の手順を実行します。

  1. Apple および Google メッセージングサービスに登録します。
  2. プッシュメッセージングサービスに登録して設定します。
  3. アプリにプッシュサポートを追加します。
  4. テスト用に電話を準備します。
AEM 管理者は次の手順を実行します。
  1. AEM アプリでのプッシュの設定
  2. アプリのビルドおよびデプロイ
  3. プッシュ通知の送信
  4. ディープリンクの設定(オプション)

手順 1:Apple および Google メッセージングサービスへの登録

Apple プッシュ通知サービス(APNS)の使用

Apple ページ(こちら)に移動して、Apple プッシュ通知サービスについて理解を深めます。

APNS を使用するには、Apple が提供する証明書ファイル(.cer ファイル)、プッシュ用秘密鍵(.p12 ファイル)および秘密鍵のパスワードが必要です。そのための方法については、こちらを参照してください。

Google Cloud Messaging(GCM)サービスの使用

注意:

Google は、GCM を Firebase Cloud Messaging(FCM)という類似のサービスに置き換えます。FCM について詳しくは、こちらを参照してください。

Google ページ(こちら)に移動して、Android 向けの Google Cloud Messaging について理解を深めます。

所定の手順(こちら)に従って、Google API プロジェクトを作成しGCM サービスを使用可能にしAPI キーを取得する必要があります。Android デバイスにプッシュ通知を送信するには、API キーが必要になります。また、プロジェクト番号GCM Sender ID と呼ばれることもあります)を記録します。

以下に、GCM API キーを作成する別の方法を示します。

  1. Google にログインし、Google の開発者ページに移動します。
  2. リストからアプリを選択します(または新しいアプリを作成します)。
  3. 「Android package name」に、アプリの ID である「com.adobe.cq.mobile.weretail.outdoorsapp」を入力します(うまくいかない場合は、「test.test」でもう一度試します)。
  4. Continue To Choose and configure services」をクリックします。
  5. 「Cloud Messaging」を選択し、「Enable Google Cloud Messaging」をクリックします。
  6. 新しいサーバー API キー(「Server API Key」)と(新規または既存の)送信者 ID(「Sender ID」)が表示されます。 

注意:

サーバー API キーを記録します。この値は、プッシュプロバイダーのサイトで入力します。

手順 2:プッシュメッセージングサービスの登録および設定

AEM は、プッシュ通知に 3 つのサービスのうちいずれかを使用するように設定されています。

  • Amazon SNS
  • Pushwoosh
  • Adobe Mobile Services

Amazon SNS および Pushwoosh の設定を使用すると、AEM 画面内からプッシュ通知を送信できます。

Adobe Mobile Services の設定を使用すると、Adobe Analytics アカウントを使用して Adobe Mobile Services 内からプッシュ通知を設定および送信できます(ただし、AMS プッシュ通知を有効にするには、この設定をおこなってアプリをビルドする必要があります)。

Amazon SNS メッセージングサービスの使用

注意:

Amazon SNS に関する情報および新規 AWS アカウントを作成するためのリンクは、こちらを参照してください。1 年間無料のアカウントを入手できます。

Amazon SNS を使用しない場合には、この手順をスキップできます。

次の手順に従って、プッシュ通知用に Amazon SNS を設定します。

  1. Amazon SNS への登録

    1. アカウント ID を記録します。形式は、スペースとダッシュを含まない 12 桁の数字で、「123456789012」のようになります。
    2. 現在の地域が「us-east」または「eu」であることを確認します。後の手順(ID プールの作成)でそのどちらかが必要になるからです。
    3. 登録したら、管理コンソールにログインし、SNS(プッシュ通知サービス)を選択します。「Get Started」をクリックします(表示されている場合)。
  2. アクセスキーおよび ID の作成

    1. 画面右上のログイン名をクリックし、メニューから「Security Credentials」を選択します。
    2. 「Access Keys」をクリックし、下のスペースで「Create New Access Key」をクリックします。
    3. Show Access Key」をクリックし、表示されたアクセスキー ID および秘密アクセスキーをコピーして保存します。キーをダウンロードするオプションを選択した場合には、ダウンロードした csv ファイルにそれらと同じ値が記載されています。
    4. このページでは、他のセキュリティ関連の証明書などを管理できます。

    注意:

    アクセスキーは、複数のアプリで使用できます。

    「AWS サンドボックス」アカウントを使用する組織でも、同様に以下の手順に従います。

    1. 画面右上のログイン名をクリックし、メニューから「My Security Credentials」を選択します。
    2. 左側のアクションのリストから「Users」をクリックして、ユーザー名を選択します。
    3. 「Security credentials」タブをクリックします。
    4. ここからキーを表示し、新規のキーを作成します。後で使用するためにキーを保存します。
  3. トピックの作成

    1. Create Topic」をクリックし、トピック名を選択します。「Topic ARN」、「Topic Owner」、「Region」、「Display name」などすべてのフィールドを記録します。
    2. Other Topic ActionsEdit Topic Policy をクリックします。「Allow these users to subscribe to this topic」で、「Everyone」を選択します。
    3. Update Policy」をクリックします。

    注意:

    開発、テスト、デモなどの、様々なシナリオに合わせて複数のトピックを作成できます。残りの SNS 設定は同じままにしておくことができます。さまざまなトピックでアプリをビルドしてください。そのトピックに送信されるプッシュ通知は、そのトピックでビルドされたアプリのみが受信することになります。

  4. プラットフォームアプリケーションの作成

    1. Applications/Create Platform Application をクリックします。名前を選択し、プラットフォーム(iOS の場合は APNS、Android の場合は GCM)を選択します。プラットフォームに応じて、他のフィールドにも入力する必要があります。
      1. APNS の場合、P12 ファイル、パスワード、証明書および秘密鍵をすべて入力する必要があります。これらは、上述の手順「Apple プッシュ通知サービス(APNS)の使用」で入手済みです。
      2. GCM の場合、API キーを入力する必要があります。これは、上述の手順「Google Cloud Messaging(GCM)サービスの使用」で入手済みです。
    2. サポート対象のプラットフォームごとに 1 回、上述の手順を繰り返します。iOS と Android の両方にプッシュできるようにするには、2 つのプラットフォームアプリケーションを作成する必要があります。
  5. ID プールの作成

    1. Cognito を使用して、ID プールを作成します。ここに、未認証ユーザーの基本データが格納されることになります。Amazon Cognito で現在サポートされている地域は「us-east」と「eu」のみであることに注意してください。
    2. ID プールに名前を付け、「Enable access to unauthenticated identities」ボックスをオンにします。
    3. 次のページ(Your Cognito identities require access to your resources)で、「Allow」をクリックします。
    4. ページの右上で、「Edit identity pool」リンクをクリックします。ID プールの ID が表示されます。後で使用するため、このテキストを保存します。
    5. 同じページで、「Unauthenticated role」の隣にあるドロップダウンを選択し、「Cognito_<プール名>UnauthRole」という役割が選択されていることを確認します。変更を保存します。
  6. アクセスの設定

    1. Identity and Access Management(IAM)にログインします。

    2. 「Roles」を選択します。

    3. 前の手順で作成した役割(Cognito_<ID プール名>Unauth_Role という名前)をクリックします。表示される「Role ARN」を記録します。

    4. 「Inline Policies」をまだ開いていない場合は開きます。oneClick_Cognito_<ID プール名>Unauth_Role_1234567890123 のような名前でポリシーが表示されます。

    5. 「Edit Policy」をクリックします。ポリシードキュメントのコンテンツを JSON のこのスニペットに置き換えます。

       

      {

          "Version": "2012-10-17",

          "Statement": [

              {

                  "Action": [

                      "mobileanalytics:PutEvents",

                      "cognito-sync:*",

                      "SNS:CreatePlatformEndpoint",

                      "SNS:Subscribe"

                  ],

                  "Effect": "Allow",

                  "Resource": [

                      "*"

                  ]

              }

          ]

      }

       

    6. Apply Policy」をクリックします。

Pushwoosh メッセージングサービスの使用

Pushwoosh を使用しない場合には、この手順をスキップできます。

Pushwoosh を使用するには:

  1. Pushwoosh への登録
    1. pushwoosh.com に移動し、新しいアカウントを作成します。
  2. API アクセストークンの作成
    1. Pushwoosh サイトで、API Access メニュー項目に移動して、API アクセストークンを生成します。これを記録して安全に保管する必要があります。
  3. 新しいアプリの作成
    1. Android をサポートする場合には、GCM API キーを指定する必要があります。
    2. アプリを設定するときには、フレームワークとして Cordova を選択します。
    3. iOS をサポートする場合には、証明書ファイル(.cer)、プッシュ証明書(.p12)および秘密鍵のパスワードを指定する必要があります。これらは、Apple の APNS サイトから入手済みです。 「Framework」には、「Cordova」を選択します。
    4. Pushwoosh が、そのアプリのアプリ ID を「XXXXX-XXXXX」という形式で生成します。各 X は 16 進数値(0 ~ F)です。

 

注意:

AEM にもう 1 つ別のアプリが同じアプリ ID(および関連する他の値:API アクセストークンおよび GCM ID)で設定されている場合、AEM のその別のアプリで送信されたプッシュ通知は、そのアプリ ID を持つ他のアプリに送信されます。

手順 3:アプリへのプッシュサポートの追加

コンテンツ同期設定の追加

notificationsConfig という 2 つのコンテンツノードを(1 つは app-config に、もう 1 つは app-config-dev に)作成します。

  •     /content/<your app>/shell/jcr:content/pge-app/app-config-dev/notificationsConfig
  •     /content/<your app>/shell/jcr:content/pge-app/app-config/notificationsConfig

以下のプロパティを指定します(.content.xml ファイル)。
  <jcr:root xmlns:jcr="http://www.jcp.org/jcr/1.0" xmlns:nt="http://www.jcp.org/jcr/nt/1.0"
        jcr:primaryType="nt:unstructured"
        excludeProperties="[appAPIAccessToken]"
        path="../../../.."
        targetRootDirectory=“www"
        type="notificationsconfig”/>

注意:

コンテンツ同期ハンドラーは、これらのノードを検索し、ノードがなければ pge-notifications-config.json ファイルを書き出しません。

クライアントライブラリの追加

次の手順に従って、プッシュ通知クライアントライブラリをアプリに追加する必要があります。

CRXDE Lite で以下の手順に従います。

  1. /etc/designs/phonegap/<app name>/clientlibsall に移動します。
  2. プロパティペインで「埋め込み」セクションをダブルクリックします。
  3. 表示されるダイアログで、+ ボタンをクリックして新規クライアントライブラリを追加します。
  4. 新規テキストフィールドで、「cq.mobile.push」を追加し、「OK」をクリックします。
  5. もう 1 つ「cq.mobile.push.amazon」というエントリを追加し、「OK」をクリックします。
  6. 変更内容を保存します。

注意:

アプリのスペースの都合で、プッシュ通知を削除したか、使用していない場合は、コンソールのエラーメッセージを避けるために、これらのクライアントライブラリをアプリから削除します。

手順 4:テスト用の電話の準備

注意:

プッシュ通知の場合、エミュレーターがプッシュ通知を受信できないので、実際のデバイスでテストする必要があります。

iOS

iOS の場合、Mac OS コンピューターを使用し、iOS Developer Program に参加する必要があります。一部の企業は、すべての開発者が利用できる企業ライセンスを保有しています。

XCode 8.1 では、プッシュ通知を使用する前に、プロジェクトの「Capabilities」タブに移動し、「Push Notifications」のトグルをオンに切り替える必要があります。

Android

CLI を使用して Android 搭載電話にアプリをインストールするには(以下の「6 - 電話へのアプリのデプロイ」を参照)、まず、電話を「開発者モード」にする必要があります。その方法について詳しくは、端末開発者向けオプションを有効にするを参照してください。

 

手順 5:AEM アプリでのプッシュの設定

ビルドして設定済みのモバイルデバイスにデプロイする前に、使用するメッセージングサービス用に通知設定をおこなう必要があります。

  1. プッシュ通知に適切な認証グループを作成します。
  2. 適切なユーザーとして AEM にログインし、「アプリ」タブをクリックします。
  3. 「アプリケーション」をクリックします。
  4. クラウドサービスを管理タイルを検索し、鉛筆をクリックして、クラウド設定を変更します。
  5. 通知設定として、「Amazon SNS 接続」、「Pushwoosh 接続」または「Adobe Mobile Services」を選択します。
  6. プロバイダーのプロパティを入力し、「送信」をクリックして保存し、「完了」をクリックします。AMS の場合を除き、この段階ではリモートで検証されません。 
  7. クラウドサービスを管理タイルに、入力した設定が表示されます。

手順 6:アプリのビルドおよびデプロイ

注意:PhoneGap アプリケーションのビルドに関する手順(こちら)も参照してください。

PhoneGap を使用してアプリをビルドしてデプロイするには、2 つの方法があります。  

注意:プッシュ通知のテストの場合、エミュレーターでは十分なテストが行えません。プッシュ通知ではプッシュプロバイダー(Apple または Google)とデバイス間で異なるプロトコルが使用されるからです。現在の Mac/PC ハードウェアおよびエミュレーターは、これをサポートしていません。

  1. PhoneGap Build は、PhoneGap のサーバー上でアプリを自動的にビルドする PhoneGap 提供のサービスで、ビルドされたアプリを自分のデバイスに直接ダウンロードできます。PhoneGap Build の設定および使用する方法については、PhoneGap Build のドキュメントを参照してください。
  2. PhoneGap コマンドラインインターフェイス(CLI)では、コマンドラインで機能豊富な PhoneGap コマンドを使用して、アプリをビルド、デバッグおよびデプロイできます。PhoneGap CLI の設定および使用方法については、PhoneGap の開発者用ドキュメントを参照してください。

手順 7:プッシュ通知の送信

新規通知を作成して送信するには、次の手順に従います。

  1. 新規通知の作成
    • AEM Mobile アプリのダッシュボードで、プッシュ通知タイルを探します。
    • 右上のメニューで、「作成」を選択します。このボタンを使用するには、まず、クラウド設定を設定する必要があります。
    • 通知を作成ウィザードで、タイトルおよびメッセージに入力し、「作成」ボタンをクリックします。即時または後で通知を送信する準備ができました。通知は編集でき、メッセージやタイトルを変更して保存できます。
  2. 通知の送信
    • アプリダッシュボードで、プッシュ通知タイルを探します。
    • 通知を選択するか、右下の詳細ボタン(. . .)をクリックして通知のリストを表示します。このリストは、通知を送信する準備ができたのか、既に送信されているのか、送信中にエラーが発生したのかも示します。
    • 1 つの通知(のみ)のチェックボックスを選択し、リストの上方にある「通知を送信」ボタンをクリックします。表示されるダイアログで 1 回に限り通知をキャンセルまたは送信できます。
  3. 結果の処理
    • プッシュ通知サービス(Amazon SNS または Pushwoosh)が送信要求を受信し、要求が有効であることを確認してネイティブのプロバイダー(APNS および GCM)に正常に送信した場合には、送信ダイアログがメッセージなしで閉じます。通知リストには、その通知のステータスが送信済みと表示されます。
    • プッシュ送信が失敗した場合、ダイアログには問題の発生を示すメッセージが表示されます。通知リストには、その通知のステータスがエラーと表示されますが、問題を修正すれば、通知を再度送信できます。エラーの場合、追加でエラー情報がサーバーエラーログに表示されます。
    • iOS と Android のプッシュ通知には、プラットフォームの違いがいくつかあります。その一部を示します。
      • CLI によるビルドでアプリが起動するのは、アプリを Android にデプロイした後です。iOS では、アプリを手動で起動する必要があります。プッシュ登録手順が起動時に行われることから、Android アプリは(起動および登録が完了しているので)すぐにプッシュ通知を受信できますが、iOS アプリはすぐには受信しません。
      • Android では「OK」ボタンのテキストはすべて大文字です(アプリ内通知で追加されたその他のボタンも大文字です)が、iOS ではそうではありません。

AMS プッシュ通知では、AMS サーバーから通知を作成し、送信する必要があります。AMS は、AWS および Pushwoosh による AEM の通知で提供される機能に加え、追加のプッシュ通知機能を備えています。

注意:

プッシュ通知は保証型配信ではありません。むしろお知らせに近いものです。全ユーザーがプッシュ通知を受信するように最大限の努力が払われていますが、保証型配信メカニズムではありません。また、プッシュの配信時間は 1 秒未満から最大 30 分までとさまざまです。

プッシュ通知でのディープリンクの設定

ディープリンクとは何でしょうか。プッシュ通知のコンテキストでは、アプリを開いたり、アプリ内の指定の場所に移動したり(開いている場合)できるようにする手段です。

では、これはどのように機能するでしょうか。プッシュ通知の作成者は、視覚的なパスブラウザーを利用して、オプションで通知にボタンラベル(「Show me!」など)を追加したり、通知内にリンクを記載するページを選択したりできます。送信すると、プッシュが通常どおりに発生しますが、アプリ内メッセージでは「OK」ボタンが「解除」ボタンに置き換えられ、指定した新しいボタン(「Show me!」)も表示される点が異なります。新しいボタンをクリックすると、アプリはアプリ内の指定したページに移動します。「解除」をクリックすると、単にメッセージが消去されます。

アプリが開かれていない場合は、シェードが通常どおりに表示されます。シェードで通知に対して操作を実行すると、アプリが開き、プッシュ通知に設定された内容に基づいてユーザーにディープリンクボタンが表示されます。

通知を作成し、オプションのディープリンクのボタンテキストおよびリンクパスを追加します。

警告:

ダッシュボードのプッシュ通知タイルにアクセスするには、以下の手順に従います。

  1. クラウドサービスを管理タイルの右上隅の編集アイコンをクリックします。

    chlimage_1
  2. Pushwoosh 接続」を選択します。「次へ」をクリックします。

    chlimage_1
  3. プロパティの詳細を入力して、「送信」をクリックします。

    chlimage_1

    設定を送信すると、ダッシュボードにプッシュ通知タイルが表示されます。

    chlimage_1

通知を作成ウィザード

ダッシュボードにプッシュ通知タイルが表示されたら、通知を作成ウィザードを使用してコンテンツを追加します。

  1. プッシュ通知タイルの右上隅にある追加記号をクリックし、通知を作成ウィザードを表示します。

    chlimage_1
  2. リンクパス内の参照アイコンをクリックすると、ユーザーにアプリのコンテンツ構造が表示されます。

    パスを選択したら、チェックアイコンをクリックします。

    chlimage_1

    注意:

    リンクボタンテキストは、20 文字に制限されています。

    エンドユーザーのアプリケーションが最新バージョンではなく、リンクされたパスが使用できない場合に、ディープリンクのアクションを確定すると、ユーザーはアプリのメインページに移動します。

  3. 通知を作成ウィザードの「テキスト詳細」に入力し、「作成」をクリックします。

     

    chlimage_1

    プッシュ通知タイルから、作成したプッシュ通知をクリックして、詳細を表示します。

    プロパティの編集、通知の送信、通知の削除をおこなえます。

    chlimage_1

注意:

追加情報

Pushwoosh および Amazon SNS は、6.4 リリース以降はサポートされません。パッケージ共有からアドオンとして利用できます。

次のステップ

アプリのプッシュ通知の詳細を理解したら、AEM Mobile のコンテンツパーソナライゼーションを参照してください。

 

 

本作品は Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License によってライセンス許可を受けています。  Twitter™ および Facebook の投稿には、Creative Commons の規約内容は適用されません。

法律上の注意   |   プライバシーポリシー