2017-05-03 33 views
0
之間的Java對象引用

最近我讀過Reddit上此評論:如何分享Android組件

我想在Android EventBus很受歡迎,因爲人們不知道如何共享Java對象Android組件之間的引用,如Fragment和Activity,或者2 Activities等等。所以基本上我認爲人們不知道2 Activites如何觀察數據變化的同一對象,我認爲這是因爲我們仍然不知道如何正確構建我們的應用程序。

據我知道:

  • 直接引用值

    ((HostActivity)getActivity()).someValue

    可能引起問題如內存泄漏或NullPointerException

  • 回調或其他觀察者模式

    EventBus,內部類像listener和等

所以我很好奇,這是否有任何其他方式,可你跟我就可以分享?

+0

我認爲[這](http://stackoverflow.com/questions/4878159/whats-the-best-way-to-share-data-between-activities)是一個很好的答案 –

回答

0

IMO,還有諸如幾種方法你的意見:

  • 使用本地數據庫,現在ORM像Realm是非常受歡迎的,它也是安全的方式。
  • 使用共享首選項如果您的對象能夠轉換爲json,則它取決於您的情況。
  • 使用意圖serialize/parcelable對象包。
  • 使用一個單身人士,現在@scopeDagger 2是不錯的選擇。
  • 使用RxJava作爲事件總線。