intent传递较大数据的解决和intent不能传递较大数据的原因

一、首先提供需要在activity之间用intent传递较大数据的方法。intent不能传递较大数据,需要传递数据的时候,写一个操作类:

public class DataHelper {private static final DataHelper helper= new DataHelper();public static DataHelper getInstance() {return helper;}Map<String, WeakReference<Object>> data = new HashMap<String, WeakReference<Object>>();public void saveData(String id, Object object) {data.put(id, new WeakReference<Object>(object));}public Object getData(String id) {WeakReference<Object> objectWeakReference = data.get(id);return objectWeakReference.get();}
}

解决!

在群里聊天,有人发了一个kotlin版,我也早就用kotlin了,顺手贴一下:
在这里插入图片描述

二、intent不能传递较大数据的原因
Intent携带信息的大小其实是受Binder限制。数据以Parcel对象的形式存放在Binder传递缓存中。如果数据或返回值比传递buffer大,则此次传递调用失败并抛出TransactionTooLargeException异常。Binder传递缓存有一个限定大小,通常是1Mb。但同一个进程中所有的传输共享缓存空间。多个地方在进行传输时,即时它们各自传输的数据不超出大小限制,TransactionTooLargeException异常也可能会被抛出。在使用Intent传递数据时,1Mb并不是安全上限。因为Binder中可能正在处理其它的传输工作。不同的机型和系统版本,这个上限值也可能会不同。在其它地方,例如onSaveInstanceState(@NonNull Bundle outState),也可能会遇到与Binder有关的类似问题。
网上解释的文章很多,最开始不知道是谁写的了,大家都相互复制,在下面贴出两篇解释:
https://juejin.im/post/5caa01b15188254aa83f8154
https://www.jianshu.com/p/deb696063c7d

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/53347.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

小米手机,程序在后台运行一段时间之后,访问不了网络

小米手机&#xff0c;程序后台运行一段时间后&#xff0c;程序访问不了网络&#xff0c;访问超时&#xff0c;锁屏不锁屏都是一样&#xff0c;&#xff08;不知道QQ为啥可以收到&#xff09; 暂时找到的解决方案&#xff1a; 小米手机--设置--其他高级设置--电源和性能--神隐…

OpenAI API最新速查表;轻松制作数字分身;8个ChatGPT「作弊」策略;微软提示工程官方教程 | ShowMeAI日报

&#x1f440;日报&周刊合集 | &#x1f3a1;生产力工具与行业应用大全 | &#x1f9e1; 点赞关注评论拜托啦&#xff01; &#x1f916; The OpenAI API in Python 最新速查表 ShowMeAI知识星球资源编码&#xff1a;R102 大语言模型的发展&#xff0c;正在推动 OpenAI API…

国外电子测量技术投稿经验

国外电子测量技术和电子测量技术是同一系列&#xff0c;2020年入选北大中文核心期刊&#xff0c;相对来说比较好中&#xff0c;审稿专家非常亲和&#xff0c;提出的问题都挺好回复和解答。审稿周期不到两个月&#xff0c;编辑退修以后就特别快了。 以下是投稿过程&#xff1a…

小红书用户消费心理及种草价值:后疫情时代消费心理研究

省时查报告-专业、及时、全面的行研报告库 省时查方案-专业、及时、全面的营销策划方案库 【免费下载】2023年2月份热门报告盘点 ChatGPT种子用户招募&#xff08;无限制次数直接使用&#xff09; 小红书整体框架及玩法大全 小红书爆文笔记进阶指南 罗振宇2023年跨年演讲PPT原稿…

Linux的ip经常变动的解决方法

第一步&#xff1a;查看ip 通过ip addr命令查询本机IP地址&#xff0c;可以看出是ens33网卡   如果我们不设置固定的ip地址&#xff0c;那么IP地址就会自动变更&#xff0c;所以我们通过编辑配置文件将IP地址写死 第二步&#xff1a; 编辑 ens33 网卡的网络配置文件 在Linu…

如何修复和解决 IP 地址冲突

您的网络是否面临 IP 分配错误&#xff0c;或者网络中的某些用户抱怨网络连接丢失&#xff1f;好消息是您的主机或服务器没有运行病毒;相反&#xff0c;它遇到了导致网络连接问题的IP 地址冲突&#xff0c;您可以在几分钟内修复它。 Windows 在网络错误消息中抽象地将此错误的原…

虚拟机中ip地址总是自动变化解决办法

在一开始我创建的虚拟机去用XShell远程连接的时候&#xff0c;我的主机地址总是变化&#xff0c;上一次还是192.168.57.151&#xff0c;下一次就变成了192.168.57.153&#xff0c;再下一次就不知道变成了什么&#xff0c;就很麻烦&#xff0c;每次都要去修改会话属性&#xff0…

python如何解决爬虫ip被封- - -“您操作太频繁,请稍后再访问“

描述 python 3.9.6 pycharm 问题 当我想爬取某招聘网站的信息的时候出现如下信息 {"status":false,"msg":"您操作太频繁,请稍后再访问","clientIp":"113.92.xxx.xxx","state":2402} 原因 招聘网站的反爬机制…

视频转文字怎么转?这3个方法可以将视频转为文字

短视频如火如荼的发展&#xff0c;使得很多人都加入到视频创作的行业中。在视频剪辑过程中&#xff0c;有些需要我们给视频添加字幕&#xff0c;那大家是怎么操作的呢&#xff1f;是一边观看视频&#xff0c;一边打字添加吗&#xff1f;其实不用那么麻烦&#xff0c;现在市面上…

视频转文字如何操作?几种方法带你了解如何视频转文字

不知道大家有没有和我一样的困扰&#xff0c;老师经常发送课堂录屏供我们课后复习&#xff0c;但是视频太长&#xff0c;内容过多&#xff0c;并不方便笔记的整理。那有什么方法可以快速地整理好笔记呢&#xff1f;其实很简单&#xff0c;我们只需要将视频转换成文字就可以轻松…

介绍两种提取视频语音变成文字的方式

怎么提取视频语音变成文字&#xff1f;随着这些年短视频的火爆&#xff0c;越来越多的人开始拍摄了起来。而无论是vlog、美食、游戏还是科技等形式的视频&#xff0c;字幕都是必不可少的。靠手动打字录入不仅麻烦还容易输错&#xff0c;下面给各位介绍两个方便快捷的办法&#…

python实现给视频添加字幕,并根据字幕添加语音

文章目录 前言一、"pyttsx3"实现“文字到音频”的转换二、"pydub"处理音频1.安装2.测试 三、“moviepy”合成字幕和音频1.安装2.测试 总结 前言 最近尝试用python实现给一个视频添加字幕和语音&#xff0c;查了很多博客后有了一个拼拼凑凑的方法&#xff…

手把手教会你视频转文字怎么操作,快来get

由于近几年不可抗力的因素&#xff0c;许多课程以及会议都转变为线上的形式&#xff0c;那你们有没有遇到以下这几个情况&#xff1a;老师讲课的语速的过快&#xff0c;导致记知识点的速度跟不上&#xff1b;又或者是领导开会时&#xff0c;中间还夹杂着他人不同的观点&#xf…

PC端视频中语音实时转文字

PC端视频中语音实时转文字 Win系统语音功能设置 设置哪些软件可以使用麦克风 设置语音输入来源 全局设置 局部软件设置 总结 TOC PC端视频中语音实时转文字 我比较喜欢看视频来学习&#xff0c;特别是那些基础的技术&#xff0c;但是我又有做笔记的习惯&#xff0c;因此一边看…

用GPT4写2023高考语文作文,新课标I卷,Ⅱ卷

文章目录 新课标Ⅰ卷新课标Ⅱ卷总结 每年的高考语文题目都会是热议的话题&#xff0c;今年同样也不例外。但是今年讨论的话题除了作文题目本身之外&#xff0c;对于chatgpt写出的作文会是什么样子的也​让广大网友同样期待 新课标Ⅰ卷 好的故事&#xff0c;可以帮我们更好地表达…

九龙证券|沪指收获2010年以来最强1月 北向资金净买入额刷新历史纪录

昨日&#xff0c;A股小幅调整&#xff0c;2023年1月行情随之收官。全体来看&#xff0c;1月A股商场拾级而上&#xff0c;盘面出现普涨格局&#xff0c;价值与生长风格均有亮眼体现。三大股指中&#xff0c;上证指数1月上涨5.39%&#xff0c;创2010年以来最佳局面。深证成指、创…

发送邮件那些事

邮件历史 世界的第一封电子邮件 1969年10月世界上的第一封电子邮件是由计算机科学家Leonard K.教授发给他的同事的一条简短消息。 据《互联网周刊》报道世界上的第一封电子邮件是由计算机科学家Leonard K.教授发给他的同事的一条简短消息(时间应该是1969年10月)&#xff0c;…

对邮件发送系统的深刻解析(一般程序员都不一定搞的懂)

前言 在几年以前&#xff0c;相信不少朋友都听说过&#xff0c;马云同志创办阿里巴巴的时候&#xff0c;还不会发邮件。也不知道在阿里巴巴上市之后&#xff0c;他学会收发邮件了没有&#xff01;呵呵。我是曾经从内心里“瞧不起”过&#xff0c;至少认为在这一点上我比他强很多…

使用python在Lotus Notes发送邮件

使用python在Lotus Notes发送邮件 环境&#xff1a; 1、python 2.7.9 2、Lotus Notes 8.5 说明&#xff1a; 1、server_name地址查看步骤&#xff1a; 登录邮箱—>文件—>场所—>管理场所—>编辑—>服务器—>宿主/邮件服务器 2、db_name查看步骤&#xff…

Linux发送邮件

linux、ubuntu系统发送邮件&#xff0c;linux系统配置邮箱&#xff0c;linux配置qq邮箱 一、打开qq邮箱&#xff0c;开启smtp服务 按如下操作&#xff0c;发完短信后&#xff0c;点击我已发送&#xff0c;这是会弹出一个授权码&#xff0c;记住这个授权码 后面配置邮件有用到 …