アプリ起動中に呼び出すSearchManagerは問題ないのですが、QuickSearchBoxからのIntentで検索キーワードが取得されず、検索が実行されない現象が発生しました。
その部分はいじっていなかったのですが、原因を探るためにLOGCATを見ていたらどうもIntentのフラグがFLAG_ACTIVITY_NEW_TASKだけではないということが分かってきました。
ACTION_VIEWのIntentで呼び出しが行われてその際のフラグが
0x10000000(FLAG_ACTIVITY_NEW_TASK)
だけだと思っていたら、
0x14000000(FLAG_ACTIVITY_NEW_TASK|FLAG_ACTIVITY_CLEAR_TOP)
で渡っていることが分かりました。
この2つのフラグはよく組み合わされて使われるっぽいことがAndroid Developersサイトのリファレンスにも書いてありました。
なるほど、これでは検索が実行されないのも当然・・・か。最初はきちんと動いていたのが謎。
この2つのフラグはよく組み合わされて使われるっぽいことがAndroid Developersサイトのリファレンスにも書いてありました。
なるほど、これでは検索が実行されないのも当然・・・か。最初はきちんと動いていたのが謎。
どうもスッキリしないのでもう少し調査をしたいと思います。
それにしてもQuickSearchBoxはOSバージョンが新しい方が使いやすそうですね。
0 件のコメント:
コメントを投稿