Android 应用程序未拦截url

Android 应用程序未拦截url,android,android-intent,Android,Android Intent,我正在尝试在android上截取我自己的应用程序的URL,以便用户可以在应用程序中而不是在浏览器上打开URL。(我还没有浏览器支持) 这就是我正在做的 <activity android:name=".ui.activity.MainActivity" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MA

我正在尝试在android上截取我自己的应用程序的URL,以便用户可以在应用程序中而不是在浏览器上打开URL。(我还没有浏览器支持)

这就是我正在做的

<activity android:name=".ui.activity.MainActivity" android:label="@string/app_name">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
    <intent-filter>
        <action android:name="android.intent.action.PICK_ACTIVITY" />
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.BROWSABLE" />
        <data android:scheme="http" />
        <data android:host="myapp.com" />
        <data android:pathPattern=".*"/>
    </intent-filter>
</activity>
应用程序确实截获了上述url,但只是第一次。如果在显示的选项中单击“仅一次”,则在重新启动仿真器之前,不会再获得该选项

有人经历过这个吗?我可能做错了什么?

这个答案帮助了我:


如果您将包名添加到intent,它将默认打开您的应用程序

,在该URL()上的链接后面,我遵循了HTTP方案的建议(页面底部)。我看不出这段代码和我正在做的有什么不同。我已经放弃了HTTP方案,现在我正在创建自己的方案。这是由JS在我的网站上转发的。但是,在我的应用程序打开后,如何在我的应用程序中获取URL?我在这里问了另一个问题:当你点击js网站上的链接时,你的链接应该是intent://your.scheme/someotherstuff;package=your.package,如果安装了应用程序,手机会打开你的应用程序;如果没有删除,手机会转到google play。android:pathPattern,因为你似乎没有使用它,看看这是否有帮助。
         <data android:host="goo.gl" android:scheme="http" />
         <data android:host="goo.gl" android:scheme="https" />