Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/183.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 通过意图发送一个非常大的列表_Java_Android - Fatal编程技术网

Java 通过意图发送一个非常大的列表

Java 通过意图发送一个非常大的列表,java,android,Java,Android,我有一个非常大的列表,我想通过一个意向发送它。 我不断得到: FAILED BINDER TRANSACTION !!! (parcel size = 1959784) 我的列表中有5720个对象,我在网上做了一些研究,上面说要把列表分成小块。所以,我这样做了:(得到了同样的错误) 您也可以将数据转换为单例,但我从未处理过单例,因此我不知道执行此操作的正确步骤 如果有人对如何通过intent传递超大数据集有见解,请让我知道 Singleton只是一个只创建一次的类。也就是说,您可以使用

我有一个非常大的列表,我想通过一个意向发送它。 我不断得到:

FAILED BINDER TRANSACTION !!!  (parcel size = 1959784)   
我的列表中有5720个对象,我在网上做了一些研究,上面说要把列表分成小块。所以,我这样做了:(得到了同样的错误)

您也可以将数据转换为单例,但我从未处理过单例,因此我不知道执行此操作的正确步骤


如果有人对如何通过intent传递超大数据集有见解,请让我知道

Singleton只是一个只创建一次的类。也就是说,您可以使用
getInstance()
或类似的方法,仅当实例为空时才会创建实例

然后,您可以在应用程序类中保留对singleton对象的引用(或者如果您使用DI,则创建一个singleton提供程序)


您可以将
List yourList
添加到singleton类中,并在源代码中执行类似于
App.getyoursingletonistance().saveData()
的操作,然后在目标中执行
App.getyoursingletonistance().getData()
,然后可以清除它。愉快的编码。

这可能有助于简化技巧,使用GSON将列表设置为字符串。现在将字符串从一个活动传递到另一个活动。。。
intent.putExtra("cards1", list1);
intent.putExtra("cards2", list2);
intent.putExtra("cards3", list3);
intent.putExtra("cards4", list4);