众所周知,android系统中的进程之间是不能共享内存的,但是有时候为了实现一些特殊需求,我们却需要在不同进程间取得数据通信,android也给我们提供了一些机制来实现进程间的数据通信。本人将从以下4个方面为大家阐述进程间的数据通信。
1、activity组件
一方面我们可以调用其他应用程序中的activity(如拨打电话、浏览网页、拍照等等),我们就如何在自己的activity中调用系统拍照 软件。代码如下:
//调用系统拍照
Intent i = new Intent("android.media.action.IMAGE_CAPTURE");
startActivityForResult(i,1);
//获取拍照返回的数据
在onActivityResult方法中获取,并根据自身情况做简要处理......
Bundle extras = data.getExtras();
Bitmap b = (Bitmap) extras.get("data");
另外一方面则是如何让我们自己应用程序中的activity被其他应用程序调用呢?这就需要我们将自己的activity action共享。
2、Content Provider—内容提供者
他向其他应用程序提供了一个Cursor对象。
3、Broadcast—广播
通过接收广播,发送广播进行进程间的数据通信。
4、Service之AIDL服务
后续,待补充!
本文详细介绍了Android系统中进程间通信的四种主要方式:通过Activity组件实现应用间的交互;使用ContentProvider作为数据共享的媒介;利用Broadcast进行消息广播;以及通过AIDL实现Service间的通信。
1453

被折叠的 条评论
为什么被折叠?



