通过Intent Viewer和浏览器地址栏启动Activity -什么都没有发生-只有当点击链接时



当用户访问网站时,我试图从浏览器启动一个活动(它只是显示一个警告图标),但是当我将意图过滤器添加到我的AndroidManifest.xml时,应用程序从未在加载URL时启动新活动。

它加载的唯一方式是如果它是一个链接到url(如在电子邮件中),而不是当用户实际拉出www.playboy.com

有什么建议吗?

  • 阿玛尼
清单

<activity
        android:name="com.app.Warning"
        android:label="@string/app_name" >
        <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="playboy.com" android:scheme="http"></data>  
</intent-filter> 
    </activity>

有疑问时,复制Google。Play Store和YouTube应用都在它们的意图过滤器中使用了某种路径规范。试试pathPrefix="/" .

Google Play Store的清单包括:

<data android:scheme="http" android:host="market.android.com" android:pathPrefix="/" />

试着去掉"www":

<data android:host="playboy.com" android:scheme="http"></data> 

检查你的浏览器是否被设置为这个主机的默认应用程序。

你的实现还有一个问题:当它工作时,当用户在playboy.com上冲浪时,Android会显示一个选择器对话框,要求用户用浏览器或你的应用程序打开这个地址。只有当用户点击你的应用程序时,它才会启动,否则它会像现在一样继续在浏览器中运行。我不认为这是你想达到的行为。

最新更新