通知:在 Android 12 上动态打开不同的活动 - 蹦床限制问题
Notification: Open different Activities dynamically on Android 12 - trampoline restrictions issue
类似问题:
我的问题与上述问题略有不同,因为我要求的是处理深层链接的基本正确方法。
我正在显示由推送通知触发的通知。
如果应用是Multi-Activity架构,应用需要打开不同的Activity取决于deeplink值,那么有2种处理方式:
- 首先解释深层链接值,然后在单击时注册正确的 Activity。
- 使用透明虚拟 Activity 作为目的地。让 TransparentDeeplinkHandleActivity::class.java 来处理要打开的 Activity。
我是一名 SDK 开发人员,这使得它稍微复杂一些。我不知道客户的目的地 Activity class 以及他们使用的是 Multi-Activity 还是 Single-Activiy-multi-Fragment 架构。
解决方案 2 听起来有点老套。我是否应该实施回调以要求客户端 return 目的地 Activity class 给定深层链接路径?
回答我自己的问题。
我最终选择了解决方案 #2,这是一个 hacky 解决方案:
- 使用透明虚拟 Activity 作为目的地。让 TransparentDeeplinkHandleActivity::class.java 来处理要打开的 Activity。
原因是 SDK 在打开客户端的“真实”Activity.
之前需要发送分析
Pre-Android 12,SDK 设计用于打开 BroadCastRecevier 并发送分析。然后 BroadCastReceiver 打开 Activity.
对于 TargetSDK >= 31
,BroadCastRecevier 现在替换为 TransparentDeeplinkHandleActivity
类似问题:
我的问题与上述问题略有不同,因为我要求的是处理深层链接的基本正确方法。
我正在显示由推送通知触发的通知。 如果应用是Multi-Activity架构,应用需要打开不同的Activity取决于deeplink值,那么有2种处理方式:
- 首先解释深层链接值,然后在单击时注册正确的 Activity。
- 使用透明虚拟 Activity 作为目的地。让 TransparentDeeplinkHandleActivity::class.java 来处理要打开的 Activity。
我是一名 SDK 开发人员,这使得它稍微复杂一些。我不知道客户的目的地 Activity class 以及他们使用的是 Multi-Activity 还是 Single-Activiy-multi-Fragment 架构。
解决方案 2 听起来有点老套。我是否应该实施回调以要求客户端 return 目的地 Activity class 给定深层链接路径?
回答我自己的问题。
我最终选择了解决方案 #2,这是一个 hacky 解决方案:
- 使用透明虚拟 Activity 作为目的地。让 TransparentDeeplinkHandleActivity::class.java 来处理要打开的 Activity。
原因是 SDK 在打开客户端的“真实”Activity.
之前需要发送分析Pre-Android 12,SDK 设计用于打开 BroadCastRecevier 并发送分析。然后 BroadCastReceiver 打开 Activity.
对于 TargetSDK >= 31
,BroadCastRecevier 现在替换为 TransparentDeeplinkHandleActivity