历史记录在我的项目中,我有大约30个不同的屏幕来获取数据。 现在我通常需要将值从一个屏幕传递到另一个屏幕。 (如UserID,StoreID,City等)
我目前正在做什么来传递价值观。我一直在做30个屏幕。
//Sender Activity
String strValue = "xyz";
Intent i = new Intent(this, ToClass.class);
i.putExtra("strValue", strValue);
startActivity(i);
//Receiving Activity
Intent intent = getIntent();
String strValue= intent.getExtras().getString("strValue");
现在我的技术问题是
a)发送者活动中仍然活着(或使用内存)的值。那么在进入下一个活动时如何清除呢?
b)我是否应该更好地保存strValue
中的DB
值,并在需要时从DB
访问值?因此节省了我的记忆
c)这是Android中的最佳方法吗?我目前使用的是什么。
答案 0 :(得分:1)
a)将内存/数据清除留给GC,它将处理内存中未使用的数据。
b)如果它只是一个值,您不想将其放在DB
中,因为它也会使用memory
而且需要更长的时间(就{ {1}}我认为/开销)而不是将其作为捆绑或共享偏好传递
c)如果您希望ms
仅在应用程序处于活动状态时仍然存在。这将是你的方法。如果你希望strValue
在内存中我假设它只有1个值你可以使用sharedpreference。如果您需要将大量数据存入内存,则需要使用sqlite。