最佳实践:在Android活动之间传递对象

时间:2014-07-29 15:47:18

标签: android user-interface

我想知道在活动之间传递对象的最佳做法是什么? 我注销的用户在内容项上,应该能够在登录过程后返回此项。因此,我需要在这些活动之间传递内容ID

我看到了两个基本选项:

  1. 将intent中的content-id作为URI(intent.putExtra())传递并在活动之间传递
  2. 将content-id保存到本地存储并在登录后再次加载
  3. 还有其他选择和最佳做法吗?

1 个答案:

答案 0 :(得分:2)

我建议使用SharedPreferences,就像选项2一样。 允许您在应用关闭后获取content-id(或字符串或json对象)。 您还可以在将content-id放入sharedPreferences

之前对其进行加密

除了intent(ram)和本地存储(rom / sdcard,包括数据库),我也看不到任何其他选项(本地)。

  

案例1:您需要在应用关闭后恢复活动   你应该使用本地存储

     

案例2:您无需恢复活动   应用关闭后

option 1:
  0. load the first activity
  1. start login_activity (startActivityForResult()) (do not call finish() )
  2. after login is done (call finish())
  3. activity is resumed (if login fail -> redirect to other activity )

option 2:
  1. create a public class with a data member to save the content-id/activity class
     (you may assign singleton design pattern)