将Adobe Experience Platform Mobile SDK与Commerce集成
将Adobe Experience Platform Mobile SDK与Commerce移动应用程序集成后,商家可以将Commerce 事件数据发送到Experience Platform边缘。
当Commerce事件数据在边缘可用时,其他Adobe Experience Cloud应用程序即可访问该数据。 例如,您可以使用此数据在Real-Time CDP中构建受众,然后使用这些受众个性化您的Commerce移动应用程序。
配置
要开始将Adobe Experience Platform Mobile SDK与Commerce结合使用,请在Experience Platform中安装和配置该SDK。 然后,在Commerce中完成配置。
Experience Platform
-
通过查看移动设备应用程序中的Adobe Experience Cloud教程了解移动设备应用程序功能。
-
在Experience Platform中安装和配置 SDK。
note note NOTE 您在Experience Platform中创建和配置的架构,与您在Commerce移动设备应用程序中的应用程序代码中使用的架构相同。
Commerce
完成适用于Experience Platform的SDK配置后,请将SDK配置添加到Commerce。
-
要通过SDK将Commerce事件数据发送到Experience Platform,您必须在应用程序代码中提供XDM架构。 此架构必须与Experience Platform中为SDK配置的架构匹配。
以下示例显示如何使用电子邮件字段跟踪
web.webpagedetails.pageViews
事件并设置identityMap
。code language-swift let stateName = "luma: content: ios: us: en: home" var xdmData: [String: Any] = [ "eventType": "web.webpagedetails.pageViews", "web": [ "webPageDetails": [ "pageViews": [ "value": 1 ], "name": "Home page" ] ] ] let experienceEvent = ExperienceEvent(xdm: xdmData) Edge.sendEvent(experienceEvent: experienceEvent) // Adobe Experience Platform - Update Identity let emailLabel = "mobileuser@example.com" let identityMap: IdentityMap = IdentityMap() identityMap.add(item: IdentityItem(id: emailLabel), withNamespace: "Email") Identity.updateIdentities(with: identityMap)
-
连接到Commerce Cloud环境。
在您的项目构建设置中,将URL添加到Commerce GraphQL端点。 例如:
- 调试: http://debug.commercesite.cloud/graphql/
- 发行版本: http://发行版本.commercesite.cloud/graphql/
-
要从Commerce GraphQL端点检索数据,请先使用Apollo代码生成器在项目中生成必要的文件和目录。
-
从项目目录安装 Apollo iOS。
-
初始化 Apollo Codegen CLI。
这将创建一个
apollo-codegen-configuration.json
文件。 -
使用以下内容替换
apollo-codegen-configuration.json
文件的内容,以在项目中生成必要的GraphQL文件和目录:code language-json { "schemaName" : "MagentoAPI", "input" : { "operationSearchPaths" : [ "**/*.graphql" ], "schemaSearchPaths" : [ "**/*.graphqls" ] }, "output" : { "testMocks" : { "none" : { } }, "schemaTypes" : { "path" : "../MagentoAPI", "moduleType" : { "swiftPackageManager" : { } } }, "operations" : { "inSchemaModule" : { } } }, "schemaDownloadConfiguration": { "downloadMethod": { "introspection": { "endpointURL": "http://magento24.com/graphql/", "httpMethod": { "POST": {} }, "includeDeprecatedInputValues": false, "outputFormat": "SDL" } }, "downloadTimeout": 60, "headers": [], "outputPath": "magento.graphqls" } }
-
提取 Commerce GraphQL架构。
确保路径为
./apollo-codegen-config.json
文件,该文件包含对Commerce GraphQL架构的引用。 -
生成源代码。
确保路径指向
./apollo-codegen-config.json
文件,该文件包含用于生成所需文件和目录的配置信息。 -
在新创建的 GraphQLGenerated 文件夹内,添加或编辑GraphQL类型。 例如,您可以添加具有以下内容的
DynamicBlocks.graphql
类型:code language-graphql query dynamicBlocks($input: DynamicBlocksFilterInput){ dynamicBlocks(input: $input) { items { content { html } } } }
您现在已将Adobe Experience Platform Mobile SDK与Commerce移动应用程序集成。 事件数据从您的应用程序流向Experience Platform边缘。
-
如何区分从移动应用程序生成的Commerce事件
所有事件都包含一个名为channel
的字段。 channel
字段包含channel._id
和channel._type
,对于Luma店面,这两个字段的命名空间值分别为"https://ns.adobe.com/xdm/channels/web"
和"https://ns.adobe.com/xdm/channel-types/web"
。 但是,对于移动店面,命名空间值分别为"https://ns.adobe.com/xdm/channels/mobile-app"
和"https://ns.adobe.com/xdm/channel-types/mobile"
。
后续步骤
要了解如何从移动Real-Time CDP应用程序中检索Commerce受众以告知购物车价格规则、动态块和相关产品规则,请参阅Audience Activation。