0

を使用して特定のインテントを強制的に使用できることを知っていapplication/activityますintent.setComponent()。しかし、特定のを使用すべきではないと言う方法はありapp/activityますか?

これが必要な理由: 私のアプリケーションは複数のurls (like http://www.companyname.com/something/12345). アプリがこの URL へのインテントの原因を起動する場合、これを処理するために必要なデータがあるかどうかを確認します。(私の例では、ID 12345 のもの)。インテントで何か役に立つことができない場合は、同じデータを使用して新しいインテントを作成し、ユーザーがブラウザでコンテンツを表示できるようにします。

これが私の問題が発生する瞬間です。新しく作成したインテントを開始すると、これを処理できるアプリのリストにアプリが再び表示されます。しかし、私のアプリはこの意図では何もできないことをすでに知っています。ユーザーは、私のアプリがインテントを処理できないことを既に知っていますが、それでも、私のアプリがこのリストに表示されないだけでよかったと思います。

前もって感謝します。

4

2 に答える 2

0

intent.setData(uri)うまくいく可能性のある解決策は、私が行うのではなく、新しいインテントを作成するときですintent.setDataAndType(uri, "text/html")。これにより、私のアプリがリストから消えます。現時点では、これは機能するソリューションです:)しかし、それでも、この結果を達成するためのより良い方法があるかどうかを知りたいと思います。

于 2013-01-02T12:34:06.817 に答える
0

アプリに Intent-Filters を使用し、必要に応じてワイルドカードを使用してURIを設定できます。詳細については、こちらを参照してください。アクションまたはカテゴリを介した追加情報により、アプリがインテントに一致する (一致しない) 唯一のアプリであることを確認できます。

于 2013-01-02T12:55:12.207 に答える