设置Assurance
了解如何在移动应用程序中设置Adobe Experience Platform Assurance。
Assurance(正式称为Project Griffon)旨在帮助您检查、验证、模拟和验证在移动应用程序中收集数据或提供体验的方式。
Assurance 可帮助您检查 Adobe Experience Platform Mobile SDK 生成的原始 SDK 事件。SDK 收集的所有事件都可供检查。SDK 事件加载在列表视图中,按时间排序。每个事件都有一个详细视图,可提供更多详细信息。还提供了用于浏览SDK配置、数据元素、共享状态和SDK扩展版本的其他视图。 在产品文档中了解有关Assurance的更多信息。
先决条件
- 成功设置已安装并配置SDK的应用程序。
学习目标
在本课程中,您将执行以下操作:
- 确认您的组织具有访问权限(如果您没有访问权限,请进行请求)。
- 设置您的基本URL。
- 添加所需的iOS特定代码。
- 连接到会话。
确认访问
确认您的组织有权访问Assurance。 您作为用户,应该被添加到Adobe Experience Platform的配置文件。 有关详细信息,请参阅Assurance指南中的用户访问权限。
实施
要在应用程序中实施Assurance,请执行以下操作:
除了常规的SDK安装之外,iOS还需要以下附加代码来启动应用程序的Assurance会话。
-
在Xcode的项目导航器中导航到 Luma > Luma > SceneDelegate。
-
将以下代码添加到
func scene(_ scene: UIScene, openURLContexts URLContexts: Set<UIOpenURLContext>
:code language-swift // Called when the app in background is opened with a deep link. if let deepLinkURL = URLContexts.first?.url { // Start the Assurance session Assurance.startSession(url: deepLinkURL) }
当应用程序处于后台并使用深层链接打开时,此代码会启动保证会话。
除了常规的SDK安装之外,Android还需要以下附加代码来启动应用程序的Assurance会话。
-
在Android Studio的 Android 视图中,导航到 应用程序 > kotlin+java > com.adobe.luma.tutorial.android > LumaApplication。
-
将以下代码添加到
fun handleDeeplink(deeplink: String?)
:code language-kotlin // Called when the app in background is opened with a deep link. if (deeplink.isNullOrEmpty()) { Log.w("Luma", "Deeplink is null or empty") return } Log.i("Luma", "Handling deeplink: $deeplink") Assurance.startSession(deeplink)
当应用程序处于后台并使用深层链接打开时,此代码会启动保证会话。
有关详细信息,请参阅Assurance API引用。
定义捆绑标识符
您需要为应用程序提供唯一的捆绑包标识符。
- 在Xcode中打开项目。
- 在项目导航器中选择 Luma。
- 选择 Luma 目标。
- 选择 签名和功能 选项卡。
- 定义 捆绑包标识符。
请确保使用 唯一 捆绑标识符并替换com.adobe.luma.tutorial.swiftui
捆绑标识符,因为每个捆绑标识符必须是唯一的。 通常,您使用反向DNS格式来打包的ID字符串,如com.organization.brand.uniqueidentifier
。 例如,本教程的完成版本使用com.adobe.luma.tutorial.swiftui
。
- 在Android Studio中打开项目。
- 在导航器中选择 build.gradle.kts (模块:app)。
- 确保使用 唯一 捆绑标识符并替换
com.adobe.luma.tutorial.android
中namespace
的android
值 - 请确保使用相同的 唯一 包标识符并在
com.adobe.luma.tutorial.android
中的applicationId
中替换defaultConfig
的android
通常,您使用反向DNS格式来打包的ID字符串,如com.organization.brand.uniqueidentifier
。 例如,本教程的完成版本使用com.adobe.luma.tutorial.android
。
设置基本URL
您需要设置基本URL以确保深层链接正常工作。
-
转到Xcode中的项目。
-
在项目导航器中选择 Luma。
-
选择 Luma 目标。
-
选择 信息 选项卡。
-
要添加基本URL,请向下滚动到 URL类型 并选择 + 按钮。
-
将 标识符 设置为您选择的捆绑标识符,并设置您选择的 URL方案。
请确保使用 唯一 捆绑标识符并替换com.adobe.luma.tutorial.swiftui
捆绑标识符,因为每个捆绑标识符必须是唯一的。 通常,您使用反向DNS格式来打包的ID字符串,如com.organization.brand.uniqueidentifier
。 您可以使用在定义捆绑标识符中使用的相同捆绑标识符。
同样,使用唯一的URL方案,并将已经提供的lumatutorialswiftui
替换为您的唯一URL方案。
要详细了解iOS中的URL方案,请查阅Apple的文档。
Assurance的工作方式是通过浏览器或二维码打开URL。 该URL以基本URL开头,该URL可打开应用程序并包含其他参数。 这些唯一参数用于连接会话。 在示例应用程序中,深层链接为lumatutorialswiftui://
。
-
转到Android Studio中项目的 Android 视图。
-
在导航器中选择 应用程序 > 清单 > AndroidManifest.xml。
-
确保 清单 > 应用程序 > 活动 XML元素如下所示:
code language-xml <activity android:name=".MainActivity" android:exported="true" android:theme="@style/Theme.LumaAndroid"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> <intent-filter android:label="@string/app_name"> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:scheme="lumatutorialandroid" android:host="default" /> </intent-filter> </activity>
确保指定android:scheme
(例如。 lumatutorialandroid
)和android:host
(例如default
)来定义基础URL。
若要详细了解Android中的深层链接,请参阅创建指向应用程序内容的深层链接。
Assurance的工作方式是通过浏览器或二维码打开URL。 该URL以基本URL开头,基本URL可打开应用程序并包含其他参数。 这些唯一参数用于连接会话。 在示例应用程序中,深层链接为lumatutorialandroid://default
。
连接到会话
您现在可以使用Assurance连接到会话。
在Xcode中:
-
使用
或者,您可能需要 清理 您的生成,尤其是当您看到意外结果时。 从Xcode 产品 菜单中选择 清理生成文件夹……。
-
在 允许“Luma应用程序”使用您的位置 对话框中,选择 使用应用程序时允许。
-
在 “Luma应用”希望向您发送通知 对话框中,选择 允许。
-
选择 继续…… 以允许应用跟踪您的活动。
-
在 允许“Luma应用”在其他公司的应用和网站 中跟踪您的活动,选择 允许。
-
选择 继续。
在您的浏览器中:
-
转到数据收集UI。
-
从左边栏中选择 Assurance。
-
选择 创建新会话,并选择选项 深层链接连接。
-
选择 启动。
-
提供 会话名称,如
Luma Mobile App Session
和 基本URL,它是您在Xcode中输入的URL方案,后面是://
,例如:lumatutorialswiftui://
-
选择 下一步。
-
在 创建新会话 模式对话框中:
如果您使用的是物理设备:
-
选择 扫描二维码。 要打开应用程序,请使用物理设备上的摄像头扫描二维码并点击链接。
如果您使用模拟器:
-
选择 复制链接。
-
使用
-
-
应用程序加载时,系统会显示一个模式对话框,要求您输入步骤7中显示的PIN。
输入PIN并选择 连接。
-
如果连接成功,您会看到:
-
位于应用程序顶部的Assurance图标。
-
Experience Cloud更新将在Assurance UI中完成,显示:
-
来自应用程序的体验事件。
-
选定事件的详细信息。
-
设备和时间轴。
-
-
-
选择 继续 以转到主屏幕。
在Android Studio中:
-
使用
或者,您可能需要 清理 您的生成,尤其是当您看到意外结果时。 从Android Studio 生成 菜单中选择 清理项目。
-
在 允许Luma Android向您发送通知 对话框中,选择 允许。
-
选择 显示权限对话框。
-
在 允许Luma Android访问此设备的位置?…
- 选择 精确。
- 在使用应用 时选择。
-
返回简介应用屏幕,选择 打开设备设置。
-
在 位置权限 屏幕中,选择 允许所有时间。 然后选择 ← 以返回介绍应用程序屏幕。
-
选择 继续 以转到主屏幕。
在您的浏览器中:
-
转到数据收集UI。
-
从左边栏中选择 Assurance。
-
选择 创建新会话,并选择选项 深层链接连接。
-
选择 启动。
-
提供 会话名称,如
Luma Mobile App Session
和 基本URL,它是您在Android Studio的android:scheme
AndroidManifest.xmlandroid:host
中定义的 和,以://
分隔。例如:lumatutorialandroid://default
-
选择 下一步。
-
在 创建新会话 模式对话框中:
如果您使用的是物理设备:
-
选择 扫描二维码。 要打开应用程序,请使用物理设备上的摄像头扫描二维码并点击链接。
如果您使用模拟器:
- 选择 复制链接。
- 使用
在Chrome中提示您 继续使用Luma Android 时,请选择 继续。
-
-
应用程序加载时,系统会显示一个模式对话框,要求您输入步骤7中显示的PIN。
输入PIN并选择 连接。
-
如果连接成功,您会看到:
-
位于应用程序顶部的Assurance图标。
-
Experience Cloud更新将在Assurance UI中完成,显示:
-
来自应用程序的体验事件。
-
选定事件的详细信息。
-
设备和时间轴。
-
-
验证扩展
要验证您的应用程序是否使用了最新的扩展,请执行以下操作:
-
选择 配置。
-
为
-
选择 保存。
-
选择
要更新扩展版本(例如,Messaging 和 Optimize),请从 包依赖项(例如,AEPMessaging)中选择包(扩展),然后从上下文菜单中选择 更新包。 Xcode将更新包依赖项。
如果看到过时的扩展,请参阅Android Studio文档,了解如何更新项目的依赖关系模块。
下一步: 实施同意