Android进程间通信(一)- Bundle
2023-02-18 16:28:12 时间
概述
有时候我们开发会经常遇到需要调用到其他的应用的一些服务,或者拉起其他应用的界面等等。这就需要一种方式去通知到其他进程。Android提供了很多进程间通讯(IPC)的方式,比如Intent, AIDL ,Messenger等等。本篇主要介绍Intent,但是Intent使用的方法基本所有人都会,主要说一下Intent使用的Bundle,所以标题就叫Bundle,而不是Intent。
使用举例
//发送端
Bundle data = new Bundle();
data.putString("data","Hello , i come from client");
intent.putExtras(data);
发送端可以使用Bundle 的putxxx(key,value)方法设置很多对键值对。 而接收端可以通过getXXX(key)获取对应的的value。
//接收端
Bundle bundle = intent.getExtras();
String data = bundle.getString("data");
Bundle类
bundle定义
bundle是一个final类,final类通常功能是完整的,它们不能被继承。Java中有许多类是final的,譬如String, Interger以及其他包装类。
public final class Bundle extends BaseBundle implements Cloneable, Parcelable
bundle 传递的数据可以是boolean、byte、int、long、float、double、string等基本类型或它们对应的数组,也可以是对象或对象数组。但是如果传递对象或对象数组,该对象必须实现Serializable 或Parcelable接口。由Bundle定义我们也可以看到其实现了Parcelable接口,所以支持实现了Parcelable接口的对象。
相关文章
- OpenHarmony移植案例与原理:如何适配服务启动引导部件bootstrap_lite
- OpenHarmony移植案例:如何适配服务启动引导部件bootstrap_lite
- BootstrapTable 行内编辑解决方案:bootstrap-table-editor
- 网站在线客服系统源码 | 全渠道在线客服代码下载 (最新版支持外贸商城/H5/小程序/公众号对接)
- 前端vue2+vue-router3+ElementUI+axios综合使用代码教程登录页案例
- 在线客服系统对接微信小程序(客服消息推送)
- 【小程序】同一微信号在微信开发工具上怎么切换小程序
- 【小程序】微信公众号模板消息跳转小程序发送失败:errcode=40013 , errmsg=invalid appid rid:
- 【小程序】微信小程序报错47001 - data format error hint
- 【小程序】微信小程序报错:用户绑定的手机需要进行验证,请在客户端完成短信验证
- 【小程序】微信小程序设置globalData全局数据
- 【小程序】获取手机号报错:getPhoneNumber:fail no permission
- 【小程序】小程序webview不支持打开非业务域名请重新配置
- 【uniapp】uniapp微信小程序开发:启动微信开发者工具提示no such file or directory错误
- 【小程序】uniapp发行微信小程序上传失败Error: Error: {"errCode":-10008,"errMsg":"invalid ip
- 【小程序】如何获取微信小程序代码上传密钥?
- [前端] 前端bootstrap col-xs-6 col-md-3的布局意思
- [PHP] laravel框架注意bootstrap/cache
- 《吐血整理》高级系列教程-吃透Fiddler抓包教程(35)-Fiddler如何抓取微信小程序的包-下篇
- 网站在线客服系统源码 | 全渠道在线客服代码下载 (最新版支持外贸商城/H5/小程序/公众号对接)