使用 Jetpack Navigation 在深度链接 URI 中使用字符串常量

Using string constants in deeplink URI with Jetpack Navigation

是否可以在深层 link URI 中使用字符串常量?

目前我有几个link,导致主机部分重复:

<deepLink app:uri="www.host.com/a" />
<deepLink app:uri="www.host.com/b" />
<deepLink app:uri="www.host.com/c" />
<deepLink app:uri="www.host.com/d" />

因此,我正在寻找一种以某种方式提取的方法 www.host.com

我天真地尝试将其提取到 strings.xml:

<string name="host">www.host.com</string>

然后:

<deepLink app:uri="{@string/host}/details/{id}" />

但这不起作用(Improper use of wildcards and/or placeholders in deeplink URI host编译错误)

如对此问题的评论中所述,OP wanted to use constant strings for multiple usage in the deep link uri's. The XML feature called Entity declaration 允许这样做。

一个具有类似目标的问题也得到了回答 here