android:launchModeの意味

ActivityのonNewIntent()が呼ばれない罠にはまって行き着いたのがこれなのだが、いまいちよくわからない。

やりたいことは、ブラウザからアプリにリダイレクトさせてサーバからのデータを取りたい。

現状試したことは、
android:launchMode属性を書かない、もしくはstandardの場合は、onNewIntent()が呼ばれない。
singleInstanceもしくはsingleTaskにすると呼ばれる。

しかし、singleInstanceにすると、ほかの処理で別のActivityから値を取得するのに実装しているonActivityResult()が呼ばれなくなるという副作用が。

結局、今のところ、singleTaskを使用しているが、ちゃんと理解しないとまたはまりそう。