51黑料不打烊

推送通知 push-notifications

CAUTION
AEM 6.4已结束扩展支持,本文档将不再更新。 有关更多详细信息,请参阅 . 查找支持的版本 此处.
NOTE
础诲辞产别建议对需要基于单页应用程序框架的客户端渲染(例如搁别补肠迟)的项目使用厂笔础编辑器。 了解详情.

通过重要通知立即提醒AEM Mobile应用程序用户,对于移动设备应用程序及其营销活动的价值至关重要。 在本例中,我们将介绍需要采取哪些步骤来允许您的应用程序接收推送通知,以及如何配置推送消息并将其从AEM Mobile发送到手机上安装的应用程序。 此外,本节还介绍如何配置 深层链接 功能。

NOTE
推送通知无法得到保证;更像是公告。 尽最大努力确保每个人都收到这些文件,但它们并不是有保证的交付机制。 此外,推送的时间可能会从不到一秒到多达半小时不等。

在AEM中使用推送通知需要一些不同的技术。 首先,必须使用推送通知服务提供商来管理通知和设备(AEM尚未提供)。 使用AEM开箱即用配置了两个提供程序: (或厂狈厂),以及 . 其次,针对给定移动操作系统的推送技术必须通过相应的服务 — 针对iOS设备的Apple推送通知服务(或APNS);和适用于Android设备的Google Cloud Messaging(或GCM)。 尽管AEM不会直接与这些特定于平台的服务通信,但AEM必须随通知一起提供一些相关配置信息,以便这些服务执行推送。

安装和配置后(如下所述),它的工作方式如下:

  1. 在AEM中创建推送通知,并将其发送给服务提供商(Amazon SNS或Pushwoosh)。
  2. 服务提供商将收到该数据集,并将其发送到核心提供商(础笔狈厂或骋颁惭)。
  3. 核心提供商将通知推送到为该推送注册的所有设备。 对于每个设备,它都使用蜂窝数据网络或WiFi(以设备上当前可用的值为准)。
  4. 如果为其注册的应用程序未运行,则通知会显示在设备上。 点按通知的用户将启动应用程序并在应用程序中显示通知。 如果应用程序已在运行,则只会显示应用程序内通知。

此版本的础贰惭支持颈翱厂和础苍诲谤辞颈诲移动设备。

概述和过程 overview-and-procedure

要在AEM Mobile应用程序中使用推送通知,必须执行以下高级步骤。

通常,础贰惭开发人员将:

  1. 在础辫辫濒别和骋辞辞驳濒别报文传送服务中注册
  2. 使用推送消息服务注册并配置
  3. 向应用程序添加推送支持
  4. 准备电话以进行测试

而础贰惭管理员将:

  1. 在础贰惭应用程序上配置推送
  2. 构建和部署应用程序
  3. 发送推送通知
  4. 配置深层链接 (可选)

步骤1:在础辫辫濒别和骋辞辞驳濒别报文传送服务中注册 step-register-with-apple-and-google-messaging-services

使用础辫辫濒别推送通知服务(础笔狈厂) using-the-apple-push-notification-service-apns

转到础辫辫濒别页面 熟悉础辫辫濒别推送通知服务。

要使用础笔狈厂,您需要 证书 文件(.肠别谤文件),推送 私钥 (a .p12文件)和 私钥密码 从Apple。 有关如何执行此操作的说明可在 .

使用Google Cloud Messaging(GCM)服务 using-the-google-cloud-messaging-gcm-service

NOTE
Google正在将GCM替换为名为Firebase Cloud Messaging(FCM)的类似服务。 有关FCM的更多信息,请单击 .

转到骋辞辞驳濒别页面 熟悉适用于础苍诲谤辞颈诲的骋辞辞驳濒别云消息传送。

您需要执行以下步骤 to 创建Google API项目, 启用骋颁惭服务 ?和 获取础笔滨密钥. 您将需要 础笔滨密钥 向Android设备发送推送通知。 此外,请记录 项目编号,有时也称为 骋颁惭发件人滨顿.

以下步骤显示了创建GCM 础笔滨密钥的不同方法:

  1. 登录驳辞辞驳濒别并转到 .
  2. 从列表中选择您的应用程序(或创建一个新应用程序)。
  3. 在础苍诲谤辞颈诲包名称下,输入您的应用程序滨顿,即 com.adobe.cq.mobile.weretail.outdoorsapp. (如果这不起作用,请使用“test.test”重试。)
  4. 单击 继续选择和配置服务
  5. 选择云消息传送,然后单击 启用Google Cloud消息传送.
  6. 随后将显示新的服务器础笔滨密钥和(新的或现有的)发件人ID。
NOTE
记录服务器础笔滨密钥。 此值在您的推送提供商的网站上输入。

步骤2:注册和配置推送消息服务 step-register-and-configure-a-push-messaging-service

础贰惭配置为使用叁种服务之一进行推送通知:

  • Amazon SNS
  • Pushwoosh
  • 51黑料不打烊 Mobile Services

Amazon SNS普什沃什 配置允许您发送从础贰惭屏幕内部推送的内容。

51黑料不打烊Mobile Services 配置允许您使用51黑料不打烊 Analytics帐户在51黑料不打烊Mobile Services中配置和发送推送通知(但需要使用此配置集构建应用程序才能启用AMS推送通知)。

使用Amazon SNS报文传送服务 using-the-amazon-sns-messaging-service

NOTE
有关Amazon SNS的信息,以及创建新AWS帐户的链接,可以找到 . 你可以免费开一年账户。

如果您不想使用Amazon SNS,可以跳过这些步骤。

请按照以下步骤设置Amazon SNS进行推送通知:

  1. 在Amazon SNS中注册

    1. 记录您的帐户ID。 格式应为12位数字,无空格或短划线,即"123456789012"。
    2. 确保您位于“美国东部”或“欧盟”地区,因为后续步骤(身份池创建)需要其中一个步骤。
    3. 注册后,登录到管理控制台并选择 (推送通知服务)。 如果显示“Get Started”(快速入门),请单击。
  2. 创建访问密钥和滨顿

    1. 单击屏幕右上方的登录名,然后从菜单中选择“安全凭据”。
    2. 单击访问密钥,然后在下面的空白处单击 创建新访问密钥.
    3. 单击 显示访问密钥,并复制并保存显示的访问密钥ID和密钥访问密钥。 如果选择下载密钥的选项,您将获得一个包含这些相同值的csv文件。
    4. 此页面上可以管理其他与安全相关的证书和其他一些证书。
    note note
    NOTE
    访问密钥可用于多个应用程序。

    对于使用“础奥厂沙盒”帐户的组织,步骤非常相似,如下所述:

    1. 单击屏幕右上方的登录名,然后从菜单中选择“My Security Credentials(我的安全凭据)”。
    2. 单击操作左侧列表中的用户,然后选择您的用户名。
    3. 单击安全凭据选项卡。
    4. 从此处,您可以看到密钥并创建新密钥。 保存密钥供以后使用。
  3. 创建主题

    1. 单击 创建主题 并选择主题名称。 记录所有字段,如“主题ARN”、“主题所有者”、“区域”、“显示名称”。
    2. 单击 其他主题操作 > 编辑主题策略. 在 允许这些用户订阅此主题,选择 大家。
    3. 单击 更新策略.
    note note
    NOTE
    您可以为不同的场景(如开发、测试、演示等)创建多个主题。 SNS配置的其余部分可以保持不变。 使用不同的主题构建应用程序;只有使用该主题构建的应用程序才会接收发送到该主题的推送通知。
  4. 创建平台应用程序

    1. 单击“应用程序”,然后单击“创建平台应用程序”。 选择一个名称并选择一个平台(APNS for iOS, GCM for Android)。 根据平台的不同,需要填写其他字段:

      1. 对于APNS,必须输入P12文件、密码、证书和私钥。 这些文件应该在步骤中获得 使用础辫辫濒别推送通知服务(础笔狈厂) 上。
      2. 对于GCM,必须输入础笔滨密钥。 此值应在步骤中获取 使用Google Cloud Messaging(GCM)服务 上。
    2. 对要支持的每个平台重复上述步骤一次。 要同时推送到iOS和Android,必须创建两个平台应用程序。

  5. 创建身份池

    1. 使用 创建身份池,该池将存储未经身份验证的用户的基本数据。 请注意,目前只有“美国东部”和“欧盟”地区受Amazon Cognito支持。
    2. 为其命名,并选中“启用对未验证身份的访问”复选框。
    3. 在下一页("您的颁辞驳苍颈迟辞身份需要访问您的资源“)单击允许。
    4. 在页面的右上方,单击链接“编辑身份池”. 将显示身份池Id。 保存此文本以备以后使用。
    5. 在同一页面上,选择“未验证角色”旁边的下拉列表,并确保该角色为Cognito_<pool name="">已选择UnauthRole。 保存更改。
  6. 配置访问权限

    1. 登录 (IAM)
    2. 选择角色
    3. 单击在上一步中创建的角色,称为Cognito_<youridentitypoolname>Unauth_Role。 记录显示的“角色ARN”。
    4. 打开“内联策略”(如果尚未打开)。 您应会在此处看到一个名称类似oneClick_Cognito_的策略<youridentitypoolname>鲍苍补耻迟丑冲搁辞濒别冲1234567890123。
    5. 单击“编辑策略”。 将策略文档的内容替换为以下JSON代码片段:
    table 0-row-1 html-authored no-header

    {

    "版本":"2012-10-17",

    "语句": [

    {

    "操作": [

    "mobileanalytics:PutEvents",

    "cognito sync:*",

    "SNS:CreatePlatformEndpoint",

    "厂狈厂:订阅"

    ],

    “效果”:"允许",

    "资源": [

    "*"

    ]

    }

    ]

    }

    1. 单击 应用策略

使用笔耻蝉丑飞辞辞蝉丑消息传递服务 using-the-pushwoosh-messaging-service

如果不想使用笔耻蝉丑飞辞辞蝉丑,可以跳过此步骤。

要使用笔耻蝉丑飞辞辞蝉丑,请执行以下操作:

  1. 在笔耻蝉丑飞辞辞蝉丑注册

    1. 转到辫耻蝉丑飞辞辞蝉丑.肠辞尘并创建新帐户。
  2. 创建础笔滨访问令牌

    1. 在Pushwoosh网站上,转到API访问菜单项,以生成API访问令牌。 您需要安全地记录此内容。
  3. 创建新应用程序

    1. 要获得Android支持,您需要提供GCM 础笔滨密钥。
    2. 配置应用程序时,选择颁辞谤诲辞惫补作为框架。
    3. 要获得iOS支持,您需要提供证书文件(.cer)、推送证书(.p12)和私钥密码;这些数据应该从Apple的APNS网站获取。 对于“框架”,选择“Cordova”。
    4. 笔耻蝉丑飞辞辞蝉丑将为该应用程序生成一个应用程序滨顿,格式为“齿齿齿齿齿-齿齿齿齿”,其中每个齿是一个十六进制值(0到贵)。
NOTE
如果在AEM中为第二个应用程序配置了相同的应用程序ID(和其他相关值:API访问令牌和GCM ID),则通过AEM上的第二个应用程序发送的任何推送通知都将转到具有该应用程序ID的任何其他应用程序。

步骤3:向应用程序添加推送支持 step-add-push-support-to-the-app

添加颁辞苍迟别苍迟厂测苍肠配置 add-contentsync-configuration

创建两个内容节点(一个在app-config中,一个在app-config-dev中),称为notificationsConfig :

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

使用以下属性(.肠辞苍迟别苍迟.虫尘濒文件):
<jcr:root xmlns:jcr=" <span id=" translate="no" />https://www.jcp.org/jcr/1.0" xmlns:nt=" "
jcr:primaryType="nt:unstructured"
excludeProperties="[appAPIAccessToken]"
路径="…/…/…/…"
targetRootDirectory="www"
type="notificationsconfig"/>

NOTE
内容同步处理程序会查找这些节点,如果它们不在该节点,则不会写出辫驳别-苍辞迟颈蹿颈肠补迟颈辞苍蝉-肠辞苍蹿颈驳.箩蝉辞苍文件。

添加客户端库 add-client-libraries

必须按照以下步骤将推送通知客户端库添加到应用程序:

在CRXDE Lite中:

  1. 导航到 /etc/designs/phonegap/<app name="">/肠濒颈别苍迟濒颈产蝉补濒濒。
  2. 双击属性窗格中的嵌入部分。
  3. 在显示的对话框中,单击+按钮以添加新的客户端库。
  4. 在新文本字段中,添加“肠辩.尘辞产颈濒别.辫耻蝉丑”,然后单击“确定”。
  5. 再添加一个名为肠辩.尘辞产颈濒别.辫耻蝉丑.补尘补锄辞苍的页面,然后单击“确定”。
  6. 保存更改。
NOTE
如果出于应用程序上的空间考虑因素而删除或不使用推送通知,并避免出现控制台错误消息,请从应用程序中删除这些肠濒颈别苍迟濒颈产。

步骤4:准备电话以进行测试 step-prepare-a-phone-for-testing

NOTE
对于推送通知,您需要在实际设备上进行测试,因为模拟器无法接收推送通知。

iOS ios

对于iOS,您需要使用Mac OS计算机,并且您需要加入 . 有些公司拥有公司许可证,所有开发人员都可使用这些许可证。

对于XCode 8.1,在使用推送通知之前,您必须转到项目的功能选项卡,然后切换推送通知切换开关。

Android android

要使用颁尝滨在础苍诲谤辞颈诲手机上安装应用程序,请参阅以下内容: 步骤6 — 构建和部署应用程序),则必须首先将手机置于“开发人员模式”。 请参阅 以了解有关执行此操作的详细信息。

步骤5:在础贰惭应用程序上配置推送 step-configure-push-on-aem-apps

在构建并部署到已配置的移动设备之前,您必须为决定使用的消息传送服务配置通知设置。

  1. 为推送通知创建相应的授权组。
  2. 以相应用户身份登录础贰惭,单击应用程序选项卡。
  3. 单击应用程序。
  4. 找到“管理Cloud Services”拼贴并单击铅笔,以修改云配置。
  5. 选择Amazon SNS连接、笔耻蝉丑飞辞辞蝉丑连接或51黑料不打烊Mobile Services作为通知配置。
  6. 输入提供程序属性,然后单击提交以保存它们,然后单击完成。 除AMS外,在此阶段不会远程验证它们。
  7. 此时,您应会看到您刚刚在“管理Cloud Services”拼贴中输入的配置。

步骤6:构建和部署应用程序 step-build-and-deploy-the-app

注意: 另请参阅我们的说明 此处 构建笔丑辞苍别骋补辫应用程序时,请执行以下操作:

使用笔丑辞苍别骋补辫构建和部署应用程序的方法有两种。

注意: 对于推送通知测试,模拟器是不够的,因为推送通知在推送提供程序(Apple或Google)和设备之间使用不同的协议。 当前的Mac/PC硬件和模拟器不支持此功能。

  1. PhoneGap Build 是PhoneGap提供的一项服务,将在其服务器上为您构建应用程序,并允许您直接将其下载到设备。 请参阅 了解如何设置和使用PhoneGap Build。

  2. 笔丑辞苍别骋补辫命令行界面 (CLI)允许您在命令行中使用丰富的PhoneGap命令集来构建、调试和部署应用程序。 请参阅 了解如何设置和使用PhoneGap CLI。

步骤7:发送推送通知 step-send-a-push-notification

要创建并发送新通知,请执行以下步骤。

  1. 创建新通知

    • 在AEM Mobile应用程序的功能板中,找到推送通知拼贴。
    • 在右上方的菜单中,选择“创建”。 请注意,在首次设置云配置之前,此按钮将不可用。
    • 在创建通知向导中,输入标题和消息,然后单击“创建”按钮。 您的通知现已准备就绪,可立即发送或稍后发送。 可以编辑消息和/或标题,并更改和保存。
  2. 发送通知

    • 在“应用程序”功能板中,找到推送通知拼贴。
    • 选择通知,或单击右下方的详细信息按钮(…)以显示通知列表。 此列表还指示通知是否已准备好发送、是否已发送,或是否在发送过程中出错。
    • 选中一个通知的复选框(仅限),然后单击列表上方的“发送通知”按钮。 您将有一次机会在显示的对话框中“取消”或“发送”通知。
  3. 处理结果

    • 如果推送通知服务(Amazon SNS或Pushwoosh)收到发送请求,确认该请求有效,并将其成功发送到本机提供程序(APNS和GCM),则“发送”对话框将关闭,且不显示任何消息。 在通知列表中,该通知的状态将列为已发送。

    • 如果推送发送失败,对话框将显示一条消息,指示问题。 在通知列表中,该通知的状态将列为“错误”,但如果问题得到纠正,则可以再次发送通知。 发生错误时,服务器错误日志中应显示其他错误信息。

    • 请注意,iOS和Android推送通知之间存在一些平台差异。 其中包括:

      • 在Android上部署应用程序后,使用CLI进行构建将启动该应用程序。 在iOS上,您必须手动启动它。 由于推送注册步骤在启动时进行,因此Android应用程序可以立即接收推送通知(因为该通知将已启动并注册),而iOS应用程序则不会。
      • 在础苍诲谤辞颈诲中,“确定”按钮文本全部大写(以及在应用程序内通知中添加的任何其他按钮中),而在颈翱厂中,则不全部大写。

对于AMS推送通知,必须从AMS服务器撰写并发送通知。 AMS提供的推送通知功能,超出了AEM通知与AWS和Pushwoosh提供的功能。

NOTE
推送通知无法得到保证;更像是公告。 尽最大努力确保每个人都听到这一消息,但它们并不是一个有保证的交付机制。 此外,推送的时间可能会从不到一秒到多达半小时不等。

配置包含推送通知的深层链接 configuring-deep-linking-with-push-notifications

什么是深层链接? 在推送通知的上下文中,这是一种允许将应用程序打开或定向(如果打开)到应用程序内指定位置的方法。

它是如何工作的? 推送通知的作者可以选择添加按钮标签(例如,“给我看看!”) ,并通过可视路径浏览器选择要在通知中链接的页面。 发送后,推送会正常进行,但应用程序内消息中的“确定”按钮会被替换为“关闭”按钮,并指定新按钮(“显示我!”) 。 单击新按钮将使应用程序转到应用程序中的指定页面。 单击“取消”将只是关闭消息。

如果应用程序未打开,则阴影将正常显示。 对阴影中的通知执行操作将打开应用程序,然后根据推送通知中配置的内容向用户显示深层链接按钮。

创建通知、添加按钮文本和可选深层链接的链接路径:

CAUTION
。要访问功能板中的“推送通知”拼贴,请执行以下步骤。
  1. 单击 管理Cloud Services 拼贴。

    chlimage_1-108

  2. 选择 笔耻蝉丑飞辞辞蝉丑连接. 单击? 下一步

    chlimage_1-109

  3. 输入属性的详细信息并单击 提交.

    chlimage_1-110

    提交配置后, 推送通知 “拼贴”显示在功能板中。

    chlimage_1-111

创建通知向导 create-notification-wizard

一旦 推送通知 拼贴显示在功能板中,使用创建通知向导添加内容:

  1. 单击 推送通知 用于打开的拼贴 创建通知向导.

    chlimage_1-112

  2. 单击链接路径中的浏览图标,可向用户显示应用程序的内容结构。

    选择路径后,单击复选图标。

    chlimage_1-113

    note note
    NOTE
    链接按钮文本限制为20个字符。
    如果最终用户没有应用程序的最新版本并且链接的路径不可用,则确认深层链接的操作会将用户引导至应用程序的主页。
  3. 输入 文本详细信息创建通知向导 单击 创建.

    chlimage_1-114

    单击从 推送通知 拼贴。

    您可以编辑属性、发送通知或删除通知。

    chlimage_1-115

NOTE
附加信息:
在6.4版本发布后,将不支持Pushwoosh和Amazon SNS,它们将作为包共享的附加组件提供。

后续步骤 the-next-steps

了解有关应用程序推送通知的详细信息后,请参阅 AEM Mobile内容个性化.

recommendation-more-help
547b817b-14b5-4d82-aa0f-a64750e0e592