我写了一个简单的Android应用程序并添加了一个这样的intent过滤器:
<intent-filter>
<data android:scheme="http" android:host="www.somesite.com" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
现在,当我从其他应用程序(如GMail)点击链接时,我看到一个对话框:选择运行应用程序:MyApp或浏览器。
但是当我在浏览器的地址栏中输入此网址时,它只会打开一个网站。
如何设置我的应用程序,如Google Play,Google +,flipkart? (当我输入http://play.google.com/时 - 我会看到Google Play应用或浏览器对话框
答案 0 :(得分:1)
全部关于广播和意图!这个想法是你的应用程序在清单中声明它可以接收某些消息。
来自this answer:
基本上,您需要做的是定义自己的方案。某物 沿着这条线:
<intent-filter> <data android:scheme="anton" /> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <--Not positive if this one is needed ... </intent-filter>
然后,您应该可以使用以anton:URI方案开头的链接启动您的应用。
答案 1 :(得分:-1)
将此来源添加到清单文件
添加以下内容解决了问题:
所以意图过滤器看起来像:
<intent-filter>
<action android:name="android.intent.action.VIEW"></action>
<category android:name="android.intent.category.DEFAULT"></category>
<category android:name="android.intent.category.BROWSABLE"></category>
<data android:host="example.com"> </data>
<data android:scheme="https"></data>
<data android:pathPattern=".*"></data>
</intent-filter>