相关疑难解决方法(0)

在Android浏览器中建立一个链接启动我的应用程序?

是否可以建立如下链接:

<a href="anton://useful_info_for_anton_app">click me!</a>
Run Code Online (Sandbox Code Playgroud)

导致我的Anton应用程序启动?

我知道这适用于具有市场协议的Android Market应用程序,但是可以与其他应用程序类似吗?

以下是启动Android电子市场的链接示例:

<a href="market://search?q=pname:com.nytimes.android">click me!</a>
Run Code Online (Sandbox Code Playgroud)

更新: 我接受eldarerat提供的答案很有用,但我只想提一下,我对<intent-filter>标签的子元素的顺序有些麻烦.我建议您只<intent-filter>使用该标签中的新子元素制作另一个,以避免我遇到的问题.例如我AndroidManifest.xml看起来像这样:

<activity android:name=".AntonWorld"
          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>
        <data android:scheme="anton" />
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.BROWSABLE" />
        <category android:name="android.intent.category.DEFAULT" />
    </intent-filter>
</activity>
Run Code Online (Sandbox Code Playgroud)

android

221
推荐指数
6
解决办法
24万
查看次数

Android 中浏览 XML(特别是 rss)的 Intent 过滤器

我有一个活动,我想在每次用户访问浏览器中的 xml(特别是 rss)页面时运行该活动(至少假设用户从可以支持它的应用程序列表中获取它)。

我目前已经有了当前的意图过滤器:

    <activity android:name=".activities.EpisodesListActivity"
        android:theme="@android:style/Theme.NoTitleBar">
        <intent-filter>
            <category android:name="android.intent.category.BROWSABLE"></category>
            <category android:name="android.intent.category.DEFAULT"></category>
            <action android:name="android.intent.action.VIEW"></action>
            <data android:scheme="http"></data>
        </intent-filter>
    </activity>
Run Code Online (Sandbox Code Playgroud)

现在您可以猜到,这是一个邪恶的意图,因为它希望在通过 http 请求页面时打开。但是,当我广告该行时:

<data android:mimeType="application/rss+xml"></data>
Run Code Online (Sandbox Code Playgroud)

做到这一点:

    <activity android:name=".activities.EpisodesListActivity"
        android:theme="@android:style/Theme.NoTitleBar">
        <intent-filter>
            <category android:name="android.intent.category.BROWSABLE"></category>
            <category android:name="android.intent.category.DEFAULT"></category>
            <action android:name="android.intent.action.VIEW"></action>
            <data android:scheme="http"></data>
            <data android:mimeType="application/rss+xml"></data>
        </intent-filter>
    </activity>
Run Code Online (Sandbox Code Playgroud)

该应用程序不再声称能够运行 rss 文件。

另外,如果我将该行更改为:

<data android:mimeType="application/xml"></data>
Run Code Online (Sandbox Code Playgroud)

它也不起作用(甚至对于通用 xml 文件)。

那么我需要做什么意图过滤器才能声明该活动支持 rss。

(另外,如果你能告诉我如何知道用户打开的 URL,那就加分了。到目前为止,我总是使用附加功能将信息从一个活动发送到另一个活动)。

感谢您的帮助

android android-intent

5
推荐指数
1
解决办法
3069
查看次数

标签 统计

android ×2

android-intent ×1