2013-09-26 30 views
1

我有一個應用程序,我有時每秒從外部服務發送數據到應用程序一次。數據是一個包含約10個Parselable對象的數組,其中包含一些簡短的String和Integer字段。Android意向與消息效率?

有兩種方法我都試過從外部服務發送數據:

  1. 隨着消息中的應用程序提供一個單例類:

    Message msg = Message.obtain();

    msg.obj = data;
    messenger.send(msg);

  2. ,意圖在應用程序交付到IntentService

    intent.putExtra(dataName, data);

    context.startService(intent);

兩個工作,但我更喜歡意圖的方法,因爲它可能讓我引導我的應用程序,如果它不是當Service發送數據時不會運行。

鑑於數據傳輸率相對較高,這種方法有什麼問題嗎?

Intent效率比Message低嗎?

+0

如果您有大量數據要共享,則內容提供者可能更合適 – njzk2

+0

它看起來像ContentProvider需要應用程序來提取數據。就我而言,我需要將數據推送到應用程序,因爲數據是從外部傳感器間歇性地到達的。 – davidgyoung

回答

1

如果您將非常大的數據放入您的意圖中,它可以凍結應用程序。除此之外,我不知道。實際上,如果你所做的一切都適合你,那麼只要它有效就沒問題。