1​,android 新建aidl 文件 删除void basicTypes(int anInt, long aLong, boolean aBoolean, float aFloat, double aDouble, String aString);这个方法没用到 还需要实现。

android Aidl 实现进程间通讯_第1张图片

2,添加自己需要的方法例如

package com.cglt.cutticket;// Declare any non-default types here with import statementsinterface CgltechAidl {     int getApkVersionCode();}

3,定义Service,定内部类CgltehcBinder 实现Aidl接口,并且onBind返回实现类

public class AidlService extends Service {    class CgltehcBinder extends CgltechAidl.Stub {        public CgltehcBinder() {            Log.e("biner", "biner");        }        @Override        public int getApkVersionCode() throws RemoteException {            return AppInfo.apkVerisonCode;        }    }    @Nullable    @Override    public IBinder onBind(Intent intent) {        return new CgltehcBinder();    }}

4,配置Service,action为CgltechAidlAction

                

5,另一个apk绑定这个service

Intent intent = new Intent();intent.setAction("CgltechAidlAction");//Service的actionintent.setPackage("com.cglt.cutticket");//Service 所在包名bindService(intent, new ServiceConnection() {    @Override    public void onServiceConnected(ComponentName name, IBinder service) {        Log.e("fff","ok");        cgltechAidl = CgltechAidl.Stub.asInterface(service);        try {            Log.e("fff",cgltechAidl.getApkVersionCode()+"/");        } catch (RemoteException e) {            e.printStackTrace();        }    }    @Override    public void onServiceDisconnected(ComponentName name) {        Log.e("fff","no");    }}, BIND_AUTO_CREATE);

更多相关文章

  1. Android获取本机Mac地址及IP地址方法
  2. LayoutInflater.inflate()方法的介绍
  3. android 笔记 --- 自定义Android主题风格theme.xml方法
  4. android工程下运行main方法的配置方法
  5. Android Studio无法新建创建android工程解决方法
  6. Android Studio设置主题 和 不支持中文的问题解决方法

随机推荐

  1. Android(安卓)电话状态的监听和回调
  2. Linux Ubuntu Android(安卓)OpenCV
  3. Android(安卓)好的学习资料
  4. Android(安卓)-- 网络相关的系统服务启动
  5. Android(安卓)Studio 使用技巧
  6. Android(安卓)资源和国际化
  7. Android(安卓)报表工具FusionCharts解析
  8. android-基础知识:实现简单的拨打电话功能
  9. IT 网站收藏
  10. Android(安卓)学习之界面跳转