使用导航组件深度链接处理数组查询参数
Handling Array Query Params Using Navigation Component Deep Linking
我在我的项目中使用单个 activity 结构,我想使用导航组件处理深度(应用程序)链接。一切都很好,但我无法处理数组查询参数。我想获取 complex_types 作为字符串数组。
现有 URL:
my.example.com/?guests=1&complex_types=hotel&complex_types=motel
nav_graph.xml:
<fragment
android:id="@+id/complexFragment"
android:name="com.the.example.packagename.ComplexFragment"
android:label="ComplexFragment">
<argument
android:name="guests"
android:defaultValue="1"
app:argType="integer" />
<argument
android:name="complexFilters"
app:argType="???" />
<deepLink
android:id="@+id/deepLink_complex_fragment"
app:uri="my.example.com/?guests={guests}&complex_types={complexFilters}" />
</fragment>
我不知道在 complexFilters 参数中必须使用什么类型的 argType 来代替 ???。
在 android 编辑器中有一个数组复选框或您
并且在xml导航图中会是这样
<argument
android:name="images"
android:defaultValue="@null"
app:argType="string[]"
app:nullable="true" />
我在我的项目中使用单个 activity 结构,我想使用导航组件处理深度(应用程序)链接。一切都很好,但我无法处理数组查询参数。我想获取 complex_types 作为字符串数组。
现有 URL:
my.example.com/?guests=1&complex_types=hotel&complex_types=motel
nav_graph.xml:
<fragment
android:id="@+id/complexFragment"
android:name="com.the.example.packagename.ComplexFragment"
android:label="ComplexFragment">
<argument
android:name="guests"
android:defaultValue="1"
app:argType="integer" />
<argument
android:name="complexFilters"
app:argType="???" />
<deepLink
android:id="@+id/deepLink_complex_fragment"
app:uri="my.example.com/?guests={guests}&complex_types={complexFilters}" />
</fragment>
我不知道在 complexFilters 参数中必须使用什么类型的 argType 来代替 ???。
在 android 编辑器中有一个数组复选框或您
并且在xml导航图中会是这样
<argument
android:name="images"
android:defaultValue="@null"
app:argType="string[]"
app:nullable="true" />