是否可以使用actions.intent.OPEN_APP_FEATURE
内置的意图来处理两者actions.fulfillment.SLICE
并为每个都actions.fulfillment.DEEPLINK
使用不同entity-set
的 s?feature
只有当一个实现模式为参数指定一个实体集,而另一个实现模式没有指定参数时,我才能让它工作。我想要的是为 DEEPLINK 履行模式和履行模式指定FEATURE_ONE
and 。FEATURE_TWO
FEATURE_THREE
FEATURE_FOUR
actions.fulfillment.SLICE
我希望有一种方法可以使这样的actions.xml
工作:
<action intentName="actions.intent.OPEN_APP_FEATURE">
<parameter name="feature">
<entity-set-reference entitySetId="FeatureEntitySet"/>
</parameter>
<parameter name="otherFeature"> <!-- Not allowed, needs to be `feature` -->
<entity-set-reference entitySetId="SliceEntitySet" />
</parameter>
<fulfillment
urlTemplate="http://www.myapp.com/other-feature{?deepLinkFeature}"
fulfillmentMode="actions.fulfillment.DEEPLINK">
<parameter-mapping
intentParameter="feature"
urlParameter="deepLinkFeature"
required="true"
entityMatchRequired="true" />
</fulfillment>
<!-- Slice provider -->
<fulfillment
fulfillmentMode="actions.fulfillment.SLICE"
urlTemplate="content://com.myapp.slices.provider/whatever{?sliceFeature}">
<parameter-mapping
intentParameter="feature"
urlParameter="sliceFeature"
required="true"
entityMatchRequired="true" />
</fulfillment>
</action>
<entity-set entitySetId="FeatureEntitySet">
<entity identifier="FEATURE_ONE" name="first feature" />
<entity identifier="FEATURE_TWO" name="second feature" />
</entity-set>
<entity-set entitySetId="SliceEntitySet">
<entity identifier="FEATURE_THREE" name="third feature" />
<entity identifier="FEATURE_FOUR" name="fourth feature" />
</entity-set>
主要问题似乎是仅<parameter name="feature">
受支持,因此您只能指定单个实体集。我无法组合实体集,因为无法区分两种实现模式。