编辑:这是清单合并中的错误(缺少功能?)。它适用于Android Studio 3.5 Canary 5及更高版本。因此,您要做的就是每个uri添加一个<deepLink />
。在我的情况下是
<deepLink
android:id="@+id/deepLink"
app:uri="https://www.example.com/foo?cn={cardNumber}&bd={birthDate}"/>
<deepLink
android:id="@+id/deepLink2"
app:uri="https://www.example.com/foo?cn={cardNumber}"/>
我有一个"https://www.example.com/foo?cn=L349DA&bd=1982-03-12"
形式的深层链接
然后我用
解析到导航图中<deepLink
android:id="@+id/deepLink"
app:uri="https://www.example.com/foo?cn={cardNumber}&bd={birthDate}"/>
一切正常。但是我的参数bd
是可选的,因此不保证它将包含在url中。我们如何处理这种情况?
我在参数上尝试使用通配符*
时没有运气。而且我尝试添加两个<deepLink .../>
元素,但这会产生Manifest merger failed: Multiple destinations...
错误。
谢谢!
答案 0 :(得分:0)
在“ androidx.navigation:navigation-*:2.2.0-alpha02 ”中
2019年9月5日
带有查询参数的深层链接现在支持重新排序的查询参数;匹配深层链接时,具有默认值或可为空的参数现在是可选的。 (b/133273839)