接收自定义意图而不重启活动

时间:2012-06-27 11:59:23

标签: java android xml android-intent linkify

我有一个TextView有一些链接(推特风格):

Pattern pattern1 = Pattern.compile("@\\w+");
Linkify.addLinks(textView, pattern1, "my_activity://one=");
Pattern pattern2 = Pattern.compile("#\\w+");
Linkify.addLinks(textView, pattern2, "my_activity://two=");

在清单中使用以下意图过滤器声明的活动:

<intent-filter>
    <action android:name="android.intent.action.VIEW" />

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

    <data android:scheme="my_activity" />
</intent-filter>

Intent会被活动的onNewIntent方法捕获,但活动会在此之前重新启动(我假设这是默认行为)。

有没有办法在不重新启动活动的情况下接收此类意图?

1 个答案:

答案 0 :(得分:2)

看起来launchMode是个问题。您不应该使用singleInstance,因为这仅适用于HOME屏幕替换。你应该试试singleTop。这应该足以满足你的目的。