首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >URL计划(imdb://,linkedin://)没有在Android设备上启动应用程序

URL计划(imdb://,linkedin://)没有在Android设备上启动应用程序
EN

Stack Overflow用户
提问于 2014-03-05 07:35:08
回答 1查看 1.8K关注 0票数 0

我已经测试了这个方案网址(imdb:///linkedin://)的主页不能在安卓设备上启动。但是在iOS中,主页/指定页面应用程序URL都能正常工作。

(imdb:///title/tt1931435/linkedin://profile/{id})这个指定的应用程序页面完美地在安卓设备上启动。

我不明白为什么方案URL有这么大的不同?

感谢您对如何解决这一问题的投入。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-03-05 07:50:23

在iOS中,你可以直接注册你的应用程序来打开你的程序,当你这样做的时候,不管你在imdb://之后给什么,应用程序都会打开。您可以使用imdb://或imdb://来打开它。

但在Android系统中,这种行为是不同的。您不是简单地为该方案注册,而是注册完整的路径或路径前缀,甚至使用regex。当imdb:// title/tt1931435/打开IMDB应用程序时,简单的imdb://可能不会直接打开应用程序。

IMDB应用程序的开发人员可能希望仅从电影屏幕打开应用程序,而不是从主屏幕打开应用程序。

编辑:,在您的评论之后,我查找了Facebook和IMDB的AndroidManifest.xml文件,结果如下

IMDB应用程序中的IntentFilter:

代码语言:javascript
复制
        <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="imdb" android:host="" android:pathPattern="/title/tt.*" />
        </intent-filter>

Facebook应用程序中的IntentFilter:

代码语言:javascript
复制
        <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="fb" />
        </intent-filter>

在Facebook中,只有"fb“,这意味着所有以fb://开头的url都会打开应用程序。但在IMDB中,他们提供了android:pathPattern,这意味着只有符合该模式的URL才能打开应用程序。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22191415

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档