Java Branch.io(Android SDK):&x27;仅初始化启动器活动中的分支';和GDPR

Java Branch.io(Android SDK):&x27;仅初始化启动器活动中的分支';和GDPR,java,android,branch.io,fabric.io,Java,Android,Branch.io,Fabric.io,根据文件: “仅初始化启动器活动中的分支 应用程序将通过Launcher活动打开,Branch将在该活动中初始化并从链接单击中检索深层链接数据。” 我的问题是我有一个GDPRLauncherActivity,它是我项目的启动程序活动。此GDPR活动在首次启动时显示给欧盟用户,以后不再显示(GDPRLauncherActivity直接启动我的mainActivity),也不再显示给欧盟以外的用户(GDPRLauncherActivity也将直接启动我的mainActivity) 我不想在GDPRL

根据文件:

“仅初始化启动器活动中的分支 应用程序将通过Launcher活动打开,Branch将在该活动中初始化并从链接单击中检索深层链接数据。”

我的问题是我有一个GDPRLauncherActivity,它是我项目的启动程序活动。此GDPR活动在首次启动时显示给欧盟用户,以后不再显示(GDPRLauncherActivity直接启动我的mainActivity),也不再显示给欧盟以外的用户(GDPRLauncherActivity也将直接启动我的mainActivity)

我不想在GDPRLauncherActivity中初始化分支,因为它不符合GDPR(用户需要首先给出其协议)

我的问题是:如果我在MainActivity中初始化分支(而不是GDPRLauncherActivity,它不是我的launcher活动),这真的是一个问题吗。我认为这是一个问题,因为这个.getIntent()将无法获得正确的内容(并且因为它是在文档中编写的:)

那么:这是个问题吗?如果是,最简单的解决方法是什么


感谢您在上面链接的同一文档:

启用/禁用用户跟踪

如果您需要遵守用户不被GDPR跟踪的请求 目的,或以其他方式确定不应跟踪用户, 利用此字段防止分支发送网络请求。 此设置也可以在特定用户的所有用户中启用 链接,或跨您的分支链接

Branch.getInstance().disableTracking(true)

您可以选择在应用程序的整个生命周期中调用此选项。一旦 调用时,将不会从SDK发送网络请求。链接 生成将继续工作,但不包含标识 有关用户的信息。此外,深度链接将继续保持 工作,但不会跟踪用户的分析

这应该允许您专注于深度链接功能,而不必担心用户跟踪,因为您可以添加单独的逻辑来禁用它。此外,Branch不会因为您集成了SDK而收集任何PII(个人识别信息)。您必须手动设置用户ID,并通过Branch.io SDK报告用户事件

分支请求在启动器活动中初始化SDK,原因有几个:

  • 应用程序链接-当使用应用程序链接(原生Android深度链接,Android 6+支持)时,深度链接数据在启动启动程序活动的意图中找到。在这种情况下,除非手动处理意图,否则如果未首先初始化分支SDK而启动另一个活动,将无法再访问数据
  • 分支分析属性-启动启动程序活动的意图可能包含指示应用程序从何处启动的数据(可能是推送通知、播放商店列表等)

如果未使用应用程序链接,则可以在MainActivity中安全地初始化SDK。另外,由于您没有在Launcher活动中初始化它,因此最好使用MainActivity的
onCreate
方法,而不是
onStart
。这意味着您只会在第一次加载MainActivity时使用网络数据-后台和前台应用程序不会再次触发它。所有深度链接都会触发启动器活动,而启动器活动又会打开MainActivity,此时SDK将从您上面链接的同一文档的
onCreate
中初始化:

启用/禁用用户跟踪

如果您需要遵守用户不被GDPR跟踪的请求 目的,或以其他方式确定不应跟踪用户, 利用此字段防止分支发送网络请求。 此设置也可以在特定用户的所有用户中启用 链接,或跨您的分支链接

Branch.getInstance().disableTracking(true)

您可以选择在应用程序的整个生命周期中调用此选项。一旦 调用时,将不会从SDK发送网络请求。链接 生成将继续工作,但不包含标识 有关用户的信息。此外,深度链接将继续保持 工作,但不会跟踪用户的分析

这应该允许您专注于深度链接功能,而不必担心用户跟踪,因为您可以添加单独的逻辑来禁用它。此外,Branch不会因为您集成了SDK而收集任何PII(个人识别信息)。您必须手动设置用户ID,并通过Branch.io SDK报告用户事件

分支请求在启动器活动中初始化SDK,原因有几个:

  • 应用程序链接-当使用应用程序链接(原生Android深度链接,Android 6+支持)时,深度链接数据在启动启动程序活动的意图中找到。在这种情况下,除非手动处理意图,否则如果未首先初始化分支SDK而启动另一个活动,将无法再访问数据
  • 分支分析属性-启动启动程序活动的意图可能包含指示应用程序从何处启动的数据(可能是推送通知、播放商店列表等)
如果未使用应用程序链接,则可以在MainActivity中安全地初始化SDK。另外,由于您没有在Launcher活动中初始化它,因此最好使用MainActivity的
onCreate
方法,而不是
onStart
。这意味着您只会在第一次加载MainActivity时使用网络数据-后台和前台应用程序都不会