`
hemowolf
  • 浏览: 154391 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

android学习笔记之十二进程通信(IPC)

阅读更多

IPC在android是一个非常独特的实现方式,它是通过binder 驱动来实现不同进程的通信的.

深入的了解清看李先静的<<Android IPC机制详解>>

 

 不同进程之间交换数据通过Parcelable包装交换数据.可以通过Intent在不同的进程之间传送数据.
 1,Parcelable包装交换数据实现
   a,新建一个实现Parcelable接口的Wrap类.示例

		public class Wrap implements Parcelable {
			public T Data;
			public int describeContents() {
				return 0;
			}

			public void writeToParcel(Parcel dest, int flags) {
				dest.writeXX(Data);
			}
			
			public Wrap(T value) {
				 Data =value;
			}

			private Wrap(Parcel in){
				Data=in.readXX();
			}

			public static final Parcelable.Creator<Wrap> CREATOR = new Parcelable.Creator<Wrap>(){
				public Wrap createFromParcel(Parcel source) {
					return new Wrap(source);
				}
				public Wrap[] newArray(int size) {
					return new Wrap[size];
				}
			 };
		}//end class
  注意:被包装的数据必须可序列化

   b,数据交互
     Bundle.putParcelable(String key,Parcel value) 传入数据
     Bundle.getParcelable(String key) 返回传入的Parcelable实例,再通过该实例获取数据

分享到:
评论

相关推荐

    Android学习笔记--Binder

    【Android学习笔记--Binder】 Binder是Android系统中的核心组件,它是Android系统实现进程间通信(IPC,Inter-Process Communication)的主要方式。Binder机制允许不同进程的组件之间进行数据交换和功能调用,就像...

    android service 学习笔记(下)

    在“android service 学习笔记(下)”中,主要讨论了如何利用AIDL(Android Interface Definition Language)进行跨进程通信(IPC, Inter-Process Communication)。 AIDL是一种接口描述语言,它的作用是在Android...

    Android Binder入门学习笔记

    深入理解这些概念和机制,将有助于Android开发者更好地实现跨进程通信,理解和调试系统服务,以及开发更高效的应用。在实际开发中,还可以结合使用Service、ContentProvider等组件,利用Binder机制实现更复杂的系统...

    AIDL跨进程调用学习笔记

    AIDL是Android平台中实现跨进程通信的关键技术,它使得服务能够安全地向其他应用程序开放功能,同时保持进程间的隔离性。理解并熟练运用AIDL,能帮助开发者构建更加稳定、高效的Android应用。在实际开发中,我们应...

    Android组件自学笔记

    **AIDL**:AIDL(Android Interface Definition Language)是Android中用于进程间通信(IPC,Inter-Process Communication)的工具。当需要在两个不同的Android进程之间交换数据或调用方法时,就需要使用AIDL。通过...

    Android个人笔记

    IBinder是Android进程间通信(IPC)的核心机制,它允许不同进程间的对象互相调用方法。每个实现IBinder接口的对象都可以作为一个服务端,而客户端通过代理对象(BinderProxy)与服务端进行通信。这种跨进程的数据...

    Android插件化开发笔记

    关键技术包括进程通信(IPC)、类加载机制、权限管理等。 2. **类加载器机制** 在Android系统中,Dalvik/ART虚拟机的类加载器是实现插件化的重要基础。通过自定义类加载器,可以控制插件的加载时机和方式,使得...

    【读博笔记】读《 Android高手进阶教程(二十五)之---Android 中的AIDL!!! 》笔记对应代码

    总结来说,AIDL是Android系统提供的一种进程间通信机制,它简化了跨进程通信的复杂性,使得开发者能够轻松地在不同的进程中交换数据和调用方法。通过`AidlServerActivity`和`AidlClientActivity`,我们可以学习如何...

    xamarin学习笔记A17(安卓Parcel和IParcelable)

    本篇学习笔记主要聚焦于Xamarin中的Android平台,探讨了如何利用Parcel和IParcelable接口来实现对象的序列化和反序列化,以便在不同的组件或进程中传递数据。 Parcel是Android系统提供的一种轻量级的数据存储和传输...

    android 艺术开发探索 读书笔记(1-3章)

    - Android IPC(Inter-Process Communication)是指不同进程之间进行通信和数据交换的技术。 - 主要支持的方式包括:`AIDL`、`Messenger`、`ContentProvider` 和 `Socket` 等。 2. **Binder**: - 是Android中...

    Binder笔记

    - Client进程通过返回的服务名,向Binder驱动请求与Server进程通信的代理对象。 - Binder驱动创建代理对象,并通过Binder机制将代理对象引用传递给Client进程。 - Client进程通过代理对象的引用调用Server进程的接口...

    Service基础学习笔记

    3. AIDL(Android Interface Definition Language):用于实现更复杂的进程间通信(IPC),使得不同进程间的Service可以相互调用方法。 五、Service的启动模式 1. START_STICKY:服务被杀死后,系统会重新创建并...

    xamarin学习笔记A19(安卓AIDL)

    在处理Android应用时,开发者可能需要实现进程间的通信(IPC),这时就涉及到了AIDL(Android Interface Definition Language)。 AIDL是Android系统提供的一个工具,用于定义服务与不同进程之间交互的接口。它类似...

    Android群英传笔记-----by ---------刘某人程序员

    同时,也讨论了Android的进程间通信(IPC)技术,如Binder和AIDL,这对于大型应用的模块化设计至关重要。 最后,笔记还涉及到了Android的权限管理、安全性、性能优化和调试技巧。这部分内容对于开发高质量的Android...

    安卓学习笔记

    - **跨进程通信**: - 了解 Android 中的 IPC(Inter-Process Communication)机制。 - 使用 AIDL(Android Interface Definition Language)实现跨进程数据交换。 #### 八、未来发展趋势 - **Android 12+新特性...

    android的动画资料

    "AIDL.rar" 文件可能涉及到Android接口定义语言(Android Interface Definition Language),虽然它主要是用来处理进程间通信(IPC),但在某些复杂的动画实现中,可能会涉及不同进程之间的协同工作,因此这部分知识...

    Android合集(初学者必看)

    例如,`Anatomy+of+an+Android+Application+-+Android.mht`可能解析了Android应用程序的架构,包括组件(如活动、服务、广播接收器和内容提供者)、进程和线程模型,以及应用程序间通信(IPC)。而`pem_ss08_lecture...

    android初学记事本应用源码

    3. **AIDL(Android Interface Definition Language)**:AIDL是用于进程间通信(IPC, Inter-Process Communication)的工具,允许不同进程间的组件相互调用方法。在记事本应用中,如果需要在服务和服务之间或者服务...

Global site tag (gtag.js) - Google Analytics