0

我是 Android 新手,正在试验 Android 的一些功能以准备项目工作。在我提出这个问题之前,我会声明我已经花了几个小时在谷歌上搜索这个问题,即使在 Stack Overflow 上也只能找到相同的答案。我相信我已经遵循了 Stack Overflow 和其他网站上给出的建议(大多是相同的答案),但未能解决我的问题。

我的问题是,每当用户单击链接时,我希望能够从模拟器的浏览器中启动我的活动。这仅用于测试目的;下一步是对意图过滤器数据进行额外的过滤。

我可以从我自己的 WebView 和消息中让我的活动显示在活动选择器对话框中。但是,它从未显示在浏览器中。为了确保我的代码中没有其他任何内容,我创建了一个非常简单的应用程序来演示该问题。

我的活动只是加载了一个带有 TextView 的简单布局。下面是我的 AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest 
    xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.mycompany"
    android:versionCode="1"
    android:versionName="1.0">

    <uses-sdk 
        android:minSdkVersion="14"/>

    <uses-permission 
        android:name="android.permission.INTERNET"/>

    <application 
        android:label="@string/app_name" 
        android:icon="@drawable/ic_launcher">

        <activity 
            android:name="MyActivity"
            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.VIEW"/>
                <category 
                    android:name="android.intent.category.DEFAULT"/>
                <category 
                    android:name="android.intent.category.BROWSABLE"/>
                <data 
                    android:scheme="http"/>
            </intent-filter>
        </activity>
    </application>
</manifest>

我还检查了浏览器的默认操作,它们是空的。有谁知道为什么这不起作用?

4

1 回答 1

0

如果您希望能够让意图过滤器在浏览器中工作,您必须导航到一个页面并单击包含您正在过滤的 URL 的链接。将其输入地址栏中将始终转到 URL,并且永远不会提示运行应用程序。

于 2014-09-19T03:09:11.130 回答