众所周知,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服务
后续,待补充!