• Aidl


     韩梦飞沙  韩亚飞  313134555@qq.com  yue31313  han_meng_fei_sha

    安卓接口定义语言

    例如 a进程 要与 b进程中的 服务 实现通信。

    可以在 a工程 中, 创建一个 aidl文件,在里面定义接口,然后 生成gen 目录下 会自动生成 一个 .java文件。 

    然后 定义自己的 服务类, 在这个服务类 里 ,定义一个内部类,继承 这个  xxx.stub 这个内部类  xxx是根据 adil文件文件名。 这个stub内部类 实际就是 之前 生成的.java文件中所包含的一个内部类。

    在 我们定义的这个内部类中  在它的 在绑定时候 方法 中 返回  这个内部类 对象, 系统会自动将这个对象 封装成  接口绑定器IBinder对象 ,传递给它的调用者。

    然后 在 清单文件中 配置 服务类,

    在这个服务类 下 添加  动作action  安卓:name=“xxxx”      ,xxxx就是 adil的包路径加它的文件名 ,指明了这个名字,  b进程  就能找到它 ,实现通信。

    在b工程中: 把a工程中的 自动生成的.java文件 复制到 b工程里,  在绑定服务方法中 将 上面指明的那个名字 作为 意图的 动作 参数。

    b工程中 要创建相应的包,保证 自动生成的.java文件的 包名 正确。

  • 相关阅读:
    EFCore数据库迁移命令
    EF基本操作
    EF执行存储过程
    [vue]element-ui使用
    [vue]vue-router的使用
    [vue]使用webpack打包
    [vue]插槽与自定义事件
    [vue]计算属性
    [vue]axios异步通信
    [vue]组件
  • 原文地址:https://www.cnblogs.com/yue31313/p/7372375.html
Copyright © 2020-2023  润新知