32

Android docs インテント エクストラ名によると、パッケージ プレフィックスが必要です。私は長い間プレフィックスなしで Intent の追加名を使用してきましたが、本当に重要なのは Intent アクションが一意であるため、衝突の可能性はないようです。ドキュメントが間違っているのでしょうか、それとも何か不足していますか?

putExtraのドキュメントには次のように書かれています。

インテントに拡張データを追加します。名前にはパッケージ プレフィックスを含める必要があります。たとえば、アプリ com.android.contacts は「com.android.contacts.ShowAll」のような名前を使用します。

4

3 に答える 3

21

Androidのドキュメントでは、完全に修飾されたエクストラを使用することを推奨しているのは、珍しいエッジケースを処理することだと思います。エッジケースは、次の場合です。

  • Intent.ACTION_VIEWなどのパブリックインテントアクションを使用して開始できるアクティビティの記述

  • 独自の使用法では、まったく同じことを実行し、同じ名前で意味や形式が異なるエクストラがある可能性がある別のアクティビティに干渉することなく、上記のアクティビティにカスタムエクストラを渡すことができるようにする必要があります

ふぅ、それはすべて非常にありそうもないように聞こえます。パブリックインテントアクションを処理していない場合でも、エクストラを完全に修飾する必要はないように見えますが、パラノイドタイプであれば、常にそれを実行しても問題はないと思います。

于 2012-09-16T18:27:46.630 に答える
3

インテントは他のアプリやシステム自体に渡すことができるため、パッケージの名前空間を使用することをお勧めします。

于 2012-09-04T21:10:57.470 に答える