Engage SDK 常见问题解答

发布常见问题解答

谁负责管理内容发布作业?

应用开发者管理内容发布作业,并向 Engage Service 发送请求。这样一来,开发者合作伙伴就可以更好地控制向用户发布内容的时间和方式。这样可以避免为发布内容而过于频繁地唤醒合作伙伴应用。

开发者是否需要发布所有集群类型?

虽然从技术层面来讲,开发者可以只发布一个集群,但我们强烈建议开发者包含更多集群。否则,开发者将错失提升内容互动度的良机。我们强烈建议为每个行业发布所有集群类型。

在运行应用期间,开发者合作伙伴应该以怎样的频率通过 Work Manager 发布数据?

这将由开发者合作伙伴决定。对于一般推荐内容,Google 建议每天发布一次到两次;对于购物车、重新订购和其他接续内容,则建议采用事件驱动型方法(例如,启动 worker 作为用户将商品添加到购物车或在电影播放过程中停止播放的回调)。

开发者应在何时调用删除 API?

仅当没有要发布的内容时,才应调用删除 API。请勿随后调用删除和发布 API 来替换内容;发布 API 会自动移除之前的内容。

广播 intent 常见问题解答

为什么 Android 应用开发者需要注册广播 intent?

为了向用户提供新内容,您应该使用广播 intent 来触发数据同步,以应对用户可能不经常使用应用的情况。

不允许后台执行

注册广播 intent 时,您可能会遇到以下错误:

Background execution not allowed: receiving Intent
{ act=com.google.android.engage.action.PUBLISH_RECOMMENDATION .. }

您需要动态注册广播接收器。

class AppEngageBroadcastReceiver extends BroadcastReceiver {
// Trigger recommendation cluster publish when PUBLISH_RECOMMENDATION broadcast
// is received
}

public static void registerBroadcastReceivers(Context context) {

context = context.getApplicationContext();

// Register Recommendation Cluster Publish Intent
context.registerReceiver(new AppEngageBroadcastReceiver(),
new IntentFilter(com.google.android.engage.service.Intents.ACTION_PUBLISH_RECOMMENDATION));
...

}

工作流常见问题解答

与 SDK 集成时,您可能会遇到以下错误:

深层链接与软件包名称关联。使用 adb 工具测试深层链接是一种不错的方法。

adb shell am start -W -a android.intent.action.VIEW -d <DEEPLINK URI> <PACKAGE NAME>

深层链接是跟踪归因的绝佳方式。用于将用户引导至您的应用的深层链接网址可包含额外的跟踪参数。例如:http://xx/deeplink?source_tag=engage。

开发者可以添加自己的跟踪参数并提供归因数据以计算影响。