欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

android studio AIDL的使用(四)in,inout,out

程序员文章站 2022-06-19 09:50:19
1.in:代码: Log.d(TAG, "onClick: "+String.valueOf(message.isSendSuccess()));其实他在remoteService设置了isSendSuccess为true,但打印结果是false。即它在remoteService设置为true,但是没有改变在MainActivity中的值2.inout:设置为inout编译的时候不通过,会爆红,添加代码://inout的时候添加 public void readFrom...

1.in:子进程值不能传回主进程

代码:
android studio AIDL的使用(四)in,inout,out

    Log.d(TAG, "onClick: "+String.valueOf(message.isSendSuccess()));

其实他在remoteService设置了isSendSuccess为true,但打印结果是false。即它在remoteService设置为true,但是没有改变在MainActivity中的值
android studio AIDL的使用(四)in,inout,out

2.inout:两个进程可以交互

设置为inout
android studio AIDL的使用(四)in,inout,out
编译的时候不通过,会爆红,添加代码:
android studio AIDL的使用(四)in,inout,out

//inout的时候添加
    public void readFromParcel(Parcel parcel){
        content=parcel.readString();
        isSendSuccess=parcel.readByte()==1;
    }

然后运行,连接,记得等待5秒,然后打印的值为true,即remoteService改变值,影响了MainActivity
android studio AIDL的使用(四)in,inout,out

3.out:主进程不能向子进程发数据

out与in反过来
代码直接修改为out即可
android studio AIDL的使用(四)in,inout,out
在remoteService中的打印结果为空

android studio AIDL的使用(四)in,inout,out

本文地址:https://blog.csdn.net/sunweihao2019/article/details/109613387