你可以创建基于查询的意图过滤器?(Can you create an intent filter b

2019-06-24 03:38发布

我想有我的应用程序市场链接,我的申请作出回应。 所以链接市场://细节ID = my.package.name? 现在我想这样做的原因是这样我就可以发送一个链接,如果已安装,将打开的应用程序,并打开市场页面,如果不安装该应用程序。 我遇到的问题是,我的应用程序将所有市场环节作出回应,不只是我的应用程序链接。 原因是在URI的查询部分定义的包名。 有没有一种方法来过滤基于URI的查询部分的意图是什么?

Answer 1:

不,对不起,你不能。 您可以根据一切的左侧限制过滤器? ,但仅此而已。



Answer 2:

从Android的API 19,你可以做到这一点,使用sspsspPrefixsspPattern 。 例:

<intent-filter>
    <action android:name="android.intent.action.VIEW" />
    <category android:name="android.intent.category.DEFAULT" />
    <category android:name="android.intent.category.BROWSABLE" />
    <data
        android:scheme="https"
        android:sspPrefix="//play.google.com/store/apps/details?id=com.example.test"
    />
</intent-filter>

有了这样的过滤器,操作系统将提供您的应用程序仅适用于网址, id=com.example.test参数,当没有这样的参数将不提供它。 但是,这仅适用于Android 4.4或以上版本,旧版本会忽略sspPrefix

请参见这篇文章: https://chris.orr.me.uk/android-ssp-data-intent-filter/ 。



文章来源: Can you create an intent filter based on query?