我想两个应用程序之间共享数据。首先我想将文件保存到SD卡,然后读取它..但这个解决方案将无法工作..所以我婉woundering是否有发送方式ArrayList
的Object
实现Parcelable
..
还有什么其他的方法可以遵循,以实现这一目标?
注意:
活动是不一样的应用程序中。
我想两个应用程序之间共享数据。首先我想将文件保存到SD卡,然后读取它..但这个解决方案将无法工作..所以我婉woundering是否有发送方式ArrayList
的Object
实现Parcelable
..
还有什么其他的方法可以遵循,以实现这一目标?
注意:
活动是不一样的应用程序中。
ArrayList
是Serializable
类,因此可以被放入一个Intent
,只要您的自定义对象也Serializable
。 它会是这个样子:
Intent intent = new Intent(YourActivity.this, YourReceiverActivity.class);
intent.putExtra("YourArrayList", new ArrayList<YourSerializableObject>());
startActivity(intent);
然后检索它:
Intent intent = getIntent();
ArrayList<YourSerializableObject> list =
(ArrayList<YourSerializableObject>)intent.getSerializableExtra("YourArrayList");
对于你的对象是Serializable
,所包含的所有成员必须是Serializable
为好。
你可以使用一个静态类(称为DataChannel例如)具有静态部件种类的ArrayList <CustomObject>的,然后使用静态获取/设置传递活动之间的对象。
我不知道为什么没有人提到这一点,但你最好的选择是目前的SQLite。 因为它不比较养猪任何记忆这是比任何物体通过更加高效。
你可以对象的数组存储为使用意向的还有:
public Intent putExtra (String name, Parcelable[] value)
您必须配置您的其他应用程序,以接收您的自定义的URI的意图。