求证 intent传递大数据限制

来源:互联网 发布:淘宝怎么添加花呗支付 编辑:程序博客网 时间:2024/06/04 17:42

实例1:传递一个大数据StringList

import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.view.View;import com.xuan.realm.utils.LogUtils;import java.util.ArrayList;public class MainActivity extends AppCompatActivity {    private ArrayList<String> list = new ArrayList<>();    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        new Thread(new Runnable() {            @Override            public void run() {                for (int i = 0; i < 10_0000; i++) {                    list.add(String.valueOf(i));                }            }        }).start();    }    public void onTestActivity(View v) {        TestActivity.launch(this, list);    }}


import android.content.Context;import android.content.Intent;import android.os.Bundle;import android.support.annotation.Nullable;import android.support.v7.app.AppCompatActivity;import com.xuan.realm.utils.LogUtils;import java.util.ArrayList;/** * @author xuanyouwu * @email xuanyouwu@163.com * @time 2016-05-08 16:08 */public class TestActivity extends AppCompatActivity {    private static final String KEY_STR_LIST = "str_list";    public static void launch(Context context, ArrayList<String> stringList) {        Intent intent = new Intent(context, TestActivity.class);        intent.putStringArrayListExtra(KEY_STR_LIST, stringList);        context.startActivity(intent);    }    @Override    protected void onCreate(@Nullable Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        LogUtils.d("------>getStrList:" + getIntent().getStringArrayListExtra(KEY_STR_LIST));    }}

运行平台 avd  android 5.0 ram 1G:

异常: Caused by: android.os.TransactionTooLargeException: data parcel size 1996316 bytes

也就是不能超过1.9M 



运行平台htc x920e  android 4.4 ram 2G:

异常黑屏 TransactionSize: scheduleLaunchActivity(), TransactionTooLargeException, data size = 1997332

比上一次大一点点 也近似1.9M

2 0
原创粉丝点击