如何通过的ArrayList 在其它应用程序中的活动?(How to pass ArrayLi

2019-09-22 14:41发布

我想两个应用程序之间共享数据。首先我想将文件保存到SD卡,然后读取它..但这个解决方案将无法工作..所以我婉woundering是否有发送方式ArrayListObject实现Parcelable ..

还有什么其他的方法可以遵循,以实现这一目标?

注意:
活动是不一样的应用程序中。

Answer 1:

ArrayListSerializable类,因此可以被放入一个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为好。



Answer 2:

你可以使用一个静态类(称为DataChannel例如)具有静态部件种类的ArrayList <CustomObject>的,然后使用静态获取/设置传递活动之间的对象。



Answer 3:

我不知道为什么没有人提到这一点,但你最好的选择是目前的SQLite。 因为它不比较养猪任何记忆这是比任何物体通过更加高效。



Answer 4:

你可以对象的数组存储为使用意向的还有:

public Intent putExtra (String name, Parcelable[] value)

您必须配置您的其他应用程序,以接收您的自定义的URI的意图。



文章来源: How to pass ArrayList to an activity in another application?
标签: android share