Android的Aidl安装方法

AIDL(AndRoid 接口描述语言)是一种借口描述语言; 编译器可以通过aidl文件生成一段代码,通过预先定义的接口达到两个进程内部通信进程的目的. 如果需要在一个Activity中, 访问另一个Service中的某个对象, 需要先将对象转化成AIDL可识别的参数(可能是多个参数), 然后使用AIDL来传递这些参数, 在消息的接收端, 使用这些参数组装成自己需要的对象. 

AIDL的IPC的机制和COM或CORBA类似, 是基于接口的,但它是轻量级的。它使用代理类在客户端和实现层间传递值. 如果要使用AIDL, 需要完成2件事情: 1. 引入AIDL的相关类.; 2. 调用aidl产生的class. 
我通过学习最基本方法写了一个小类。

 

Android的Aidl安装方法

package com.smart.aidl;
 
import android.app.Service;
import android.content.Intent;
import android.os.IBinder;
import android.os.RemoteException;
 
public class SmartService extends Service {
 
    public class MyServiceImpl extends AidlService.Stub {
 
        @Override
        public String getValue() throws RemoteException {
            // TODO Auto-generated method stub
            return "Smart like Android!";
        }
 
    }
 
    @Override
    public IBinder onBind(Intent arg0) {
 
        return new MyServiceImpl();
    }
 
}
package com.smart.aidl;
 
import android.app.Activity;
import android.os.Bundle;
 
public class Main extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }
}
package com.smart.aidl;
interface AidlService
{
    String getValue();
}




本文转自 llb988 51CTO博客,原文链接:http://blog.51cto.com/llb988/509421,如需转载请自行联系原作者