一、创建服务端
1、首先创建AIDL文件
2、创建service,绑定AIDL接口
3、配置service
<service android:name=".AidlService"android:enabled="true"android:exported="true"><intent-filter android:priority="1000"><action android:name="AIDL.service"></action></intent-filter> </service>
4、开启service和打开ServiceConnection
Intent intent=new Intent(getApplicationContext(),AidlService.class); bindService(intent,serviceConnection,BIND_AUTO_CREATE);
----------------------------------------服务端创建完毕-------------------------------------------------------------
二、创建客户端
1、同样开始创建AIDL文件——与服务端的AIDL文件一样(复制即可)
2、创建serviceConnection
private ServiceConnection serviceConnection=new ServiceConnection() {@Overridepublic void onServiceConnected(ComponentName componentName, IBinder iBinder) {Toast.makeText(getApplicationContext(),"已连接服务器",Toast.LENGTH_LONG).show();iAidlInterface=IAidlInterface.Stub.asInterface(iBinder);try {iAidlInterface.asBinder().linkToDeath(mDeathRecipient, 0);iAidlInterface.registerCallBack(iAidlCallBack);messages.addAll(iAidlInterface.getMessages());listView.setAdapter(arrayAdapter=new ArrayAdapter<>(getApplicationContext(),android.R.layout.simple_list_item_1,messages));} catch (RemoteException e) {e.printStackTrace();}}@Overridepublic void onServiceDisconnected(ComponentName componentName) {} };
3、开启绑定服务端的service连接serviceConnection
Intent intent=new Intent(); String ACTION = "AIDL.service"; intent.setAction(ACTION); intent.setPackage("com.dlc.mytestttt"); bindService(intent,serviceConnection,BIND_AUTO_CREATE);