25

インテントを使用してシステムや他のアプリと通信する方法を理解しています。同じアプリ内でインテントを使用する方法を理解しています。また、同じアプリ内で Otto を使用して通信する方法も理解しています。

アクティビティ/サービス間で通信するために Otto とインテントを使用することの長所と短所は何ですか?

4

1 に答える 1

39

Otto を使用するメリット:

  • Intentカスタム アクションなどを使用してイベントを区別する必要がなく、独自のイベント タイプを設計できます。

  • 速度とセキュリティのために、すべてが独自のプロセス内にあります (開始しているアクティビティが独自のアプリ内であっても、常にIPC を伴うstartActivity()and kin とは対照的です)。

  • IntentFilterインスタンス化やBroadcastReceiverオブジェクトを作成する必要がないため、コーディングが少し少なくなります。

  • これはプロデューサー パターンを提供します (スティッキー ブロードキャストの準代替として)

  • OSの一部ではないため、より頻繁に更新される可能性があります

Otto を使用する場合の短所:

  • アクティビティを開始できません

  • サービスを開始できません

  • サービスにバインドできません

  • ブロードキャストを送信できません

  • PendingIntent真の IPCでは使用できません。

IOW、オットーの真の比較は との比較でLocalBroadcastManagerあり、 の一般的な使用との比較ではありませんIntents

于 2013-06-26T11:00:16.883 に答える