安卓的intent-filter <data>没有正常工作

3

我希望我的应用程序能够截取浏览器中特定的URL。以下是我在清单文件中的代码:

<activity
            android:name="com.myactivity.RootActivity">
            <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.VIEW" />

                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />

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

            </intent-filter>
        </activity>

目前它正常工作,当我打开链接http://subdomain.maindomain.com/时,会弹出一个对话框,其中列出了我的活动。

但是,当我在intent-filter中添加android:path,如下所示,它就停止工作了,甚至不使用没有路径的简单url也无法工作。

<activity
            android:name="com.myactivity.RootActivity">
            <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.VIEW" />

                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />

                <data android:scheme="http" />
                <data android:host="subdomian.maindomain.com" />
                <data android:path="myPath" />

            </intent-filter>
        </activity>

我这里做错了什么吗?

1个回答

2

我使用这些链接测试了你所说的内容,对我来说正常工作。

<data android:scheme="http" />
<data android:host="developer.android.com" />
<data android:path="/guide/topics/manifest/data-element.html"/>

我的任务是翻译文本。请告诉我需要翻译的语言和内容。
Intent browserIntent = new Intent(
    Intent.ACTION_VIEW,
    Uri.parse("http://developer.android.com/guide/topics/manifest/data-element.html"));
startActivity(browserIntent);
android:path必须与您提供的主机URL匹配才能正常工作。请问您使用了哪个URL?请参阅此链接获取帮助。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接