由android太大异常引起(数据包2076400字节)

由android太大异常引起(数据包2076400字节),android,exception,large-data,Android,Exception,Large Data,尝试使用意图附加程序将哈希映射数据传递给另一个活动会导致事务异常错误过大。(数据包2076400字节) 这是将地图数据传递给接收错误的另一个活动的代码 if { mCountDownTimer = new CountDownTimer(2000, 1000) { public void onTick(long millisUntilFinished) {} public void onFinish() { Intent intent = new I

尝试使用意图附加程序将哈希映射数据传递给另一个活动会导致事务异常错误过大。(数据包2076400字节)

这是将地图数据传递给接收错误的另一个活动的代码

if {

    mCountDownTimer =   new CountDownTimer(2000, 1000) {
    public void onTick(long millisUntilFinished) {}

    public void onFinish() {
        Intent intent = new Intent(Main2Activity.this, 
        ShowImagesActivity.class);
        intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | 
        Intent.FLAG_ACTIVITY_CLEAR_TOP);
        intent.putExtra("hashMap", map);
        startActivity(intent);
        if(Splash.Getproduct ==null) {
            if (mInterstitialAd.isLoaded()) 
             mInterstitialAd.show();
       }.start();
    }
}

如何避免这种情况并将此数据发送到另一个活动。

通过intents发送的数据量是有限制的。 它的容量是1MB。理想情况下,您应该只通过intents发送几KB的数据

您的数据大小约为2MB,超过此限制。 如果您想要传递这么多的数据,那么您也可以将其保存在数据库或内存数据存储中

活页夹事务缓冲区有一个有限的固定大小,当前为1MB,该大小由流程中所有正在进行的事务共享。由于此限制是在流程级别而不是每个活动级别,因此这些事务包括应用程序中的所有绑定事务,如onSaveInstanceState、startActivity以及与系统的任何交互。超过大小限制时,将引发TransactionTooLargeException


意向书中有数据大小的限制。看来你已经到了。不要将意图用于大数据。