• 大小: 4.28MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-09-19
  • 语言: Java
  • 标签: aidl  android  

资源简介

Android studio工程结构的AIDL详细demo,包含客户端工程和服务端工程,包含复杂对象传递和参数关键字介绍和服务端回调的知识点。

资源截图

代码片段和文件信息

/*
 * This file is auto-generated.  DO NOT MODIFY.
 * Original file: D:\\projects\\c01\\sourcecode\\apps\\AIDLClient\\app\\src\\main\\aidl\\com\\lgf\\aidl\\test\\ICallbackTest.aidl
 */
package com.lgf.aidl.test;
public interface ICallbackTest extends android.os.IInterface
{
/** Local-side IPC implementation stub class. */
public static abstract class Stub extends android.os.Binder implements com.lgf.aidl.test.ICallbackTest
{
private static final java.lang.String DEscriptOR = “com.lgf.aidl.test.ICallbackTest“;
/** Construct the stub at attach it to the interface. */
public Stub()
{
this.attachInterface(this DEscriptOR);
}
/**
 * Cast an IBinder object into an com.lgf.aidl.test.ICallbackTest interface
 * generating a proxy if needed.
 */
public static com.lgf.aidl.test.ICallbackTest asInterface(android.os.IBinder obj)
{
if ((obj==null)) {
return null;
}
android.os.IInterface iin = obj.queryLocalInterface(DEscriptOR);
if (((iin!=null)&&(iin instanceof com.lgf.aidl.test.ICallbackTest))) {
return ((com.lgf.aidl.test.ICallbackTest)iin);
}
return new com.lgf.aidl.test.ICallbackTest.Stub.Proxy(obj);
}
@Override public android.os.IBinder asBinder()
{
return this;
}
@Override public boolean onTransact(int code android.os.Parcel data android.os.Parcel reply int flags) throws android.os.RemoteException
{
java.lang.String descriptor = DEscriptOR;
switch (code)
{
case INTERFACE_TRANSACTION:
{
reply.writeString(descriptor);
return true;
}
case TRANSACTION_call:
{
data.enforceInterface(descriptor);
com.lgf.aidl.test.Entity _arg0;
if ((0!=data.readInt())) {
_arg0 = com.lgf.aidl.test.Entity.CREATOR.createFromParcel(data);
}
else {
_arg0 = null;
}
this.call(_arg0);
reply.writeNoException();
return true;
}
default:
{
return super.onTransact(code data reply flags);
}
}
}
private static class Proxy implements com.lgf.aidl.test.ICallbackTest
{
private android.os.IBinder mRemote;
Proxy(android.os.IBinder remote)
{
mRemote = remote;
}
@Override public android.os.IBinder asBinder()
{
return mRemote;
}
public java.lang.String getInterfaceDescriptor()
{
return DEscriptOR;
}
@Override public void call(com.lgf.aidl.test.Entity e) throws android.os.RemoteException
{
android.os.Parcel _data = android.os.Parcel.obtain();
android.os.Parcel _reply = android.os.Parcel.obtain();
try {
_data.writeInterfaceToken(DEscriptOR);
if ((e!=null)) {
_data.writeInt(1);
e.writeToParcel(_data 0);
}
else {
_data.writeInt(0);
}
mRemote.transact(Stub.TRANSACTION_call _data _reply 0);
_reply.readException();
}
finally {
_reply.recycle();
_data.recycle();
}
}
}
static final int TRANSACTION_call = (android.os.IBinder.FIRST_CALL_TRANSACTION + 0);
}
public void call(com.lgf.aidl.test.Entity e) throws android.os.RemoteException;
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-07-04 17:20  AIDL\
     目录           0  2018-07-04 17:20  AIDL\AIDLClient\
     文件         147  2018-07-04 10:59  AIDL\AIDLClient\.gitignore
     目录           0  2018-07-04 17:20  AIDL\AIDLClient\.gradle\
     目录           0  2018-07-04 17:20  AIDL\AIDLClient\.gradle\4.4\
     目录           0  2018-07-04 17:20  AIDL\AIDLClient\.gradle\4.4\fileChanges\
     文件           1  2018-07-04 17:16  AIDL\AIDLClient\.gradle\4.4\fileChanges\last-build.bin
     目录           0  2018-07-04 17:20  AIDL\AIDLClient\.gradle\4.4\fileContent\
     文件          17  2018-07-04 17:16  AIDL\AIDLClient\.gradle\4.4\fileContent\fileContent.lock
     目录           0  2018-07-04 17:20  AIDL\AIDLClient\.gradle\4.4\fileHashes\
     文件       43447  2018-07-04 17:16  AIDL\AIDLClient\.gradle\4.4\fileHashes\fileHashes.bin
     文件          17  2018-07-04 17:16  AIDL\AIDLClient\.gradle\4.4\fileHashes\fileHashes.lock
     文件       18701  2018-07-04 13:26  AIDL\AIDLClient\.gradle\4.4\fileHashes\resourceHashesCache.bin
     目录           0  2018-07-04 17:20  AIDL\AIDLClient\.gradle\4.4\javaCompile\
     文件       66685  2018-07-04 17:16  AIDL\AIDLClient\.gradle\4.4\javaCompile\classAnalysis.bin
     文件       31660  2018-07-04 13:43  AIDL\AIDLClient\.gradle\4.4\javaCompile\jarAnalysis.bin
     文件          17  2018-07-04 17:16  AIDL\AIDLClient\.gradle\4.4\javaCompile\javaCompile.lock
     文件       66230  2018-07-04 17:16  AIDL\AIDLClient\.gradle\4.4\javaCompile\taskHistory.bin
     文件       18893  2018-07-04 17:16  AIDL\AIDLClient\.gradle\4.4\javaCompile\taskJars.bin
     目录           0  2018-07-04 17:20  AIDL\AIDLClient\.gradle\4.4\taskHistory\
     文件      251147  2018-07-04 17:16  AIDL\AIDLClient\.gradle\4.4\taskHistory\taskHistory.bin
     文件          17  2018-07-04 17:16  AIDL\AIDLClient\.gradle\4.4\taskHistory\taskHistory.lock
     目录           0  2018-07-04 17:20  AIDL\AIDLClient\.gradle\buildOutputCleanup\
     文件          17  2018-07-04 17:16  AIDL\AIDLClient\.gradle\buildOutputCleanup\buildOutputCleanup.lock
     文件          57  2018-07-04 11:01  AIDL\AIDLClient\.gradle\buildOutputCleanup\cache.properties
     文件       20909  2018-07-04 17:16  AIDL\AIDLClient\.gradle\buildOutputCleanup\outputFiles.bin
     目录           0  2018-07-04 17:20  AIDL\AIDLClient\.idea\
     目录           0  2018-07-04 17:20  AIDL\AIDLClient\.idea\caches\
     文件         545  2018-07-04 17:09  AIDL\AIDLClient\.idea\caches\build_file_checksums.ser
     目录           0  2018-07-04 17:20  AIDL\AIDLClient\.idea\codestyles\
     文件        1803  2018-07-04 10:59  AIDL\AIDLClient\.idea\codestyles\Project.xml
............此处省略1602个文件信息

评论

共有 条评论