Receive custom intent without activity restart

2019-07-20 06:08发布

I have a TextView with some linkification(twitter style):

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

Activity declared in manifest with following intent filter:

<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 gets caught in the onNewIntent method of the activity but the activity gets restarted before that(I assume this is default behaviour).

Is there a way to receive such intent without restarting activity?

1条回答
何必那么认真
2楼-- · 2019-07-20 06:17

Looks like launchMode is the problem. You shouldn't use singleInstance, as that is only for HOME-screen replacements. You should try singleTop. That should be enough for what you are trying to do.

查看更多
登录 后发表回答