Remoter

Remoter - An alternative to Android AIDL for Android Remote IPC services using plain java interfaces

Remoter makes developing android remote services intuitive without messing with AIDL.

Android IPC through AIDL

Android supports remote IPC using AIDL. This process of using “aidl” is painful and limited.

Some of the problems and limitations of AIDL are :

Remoter - An intuitive way for Android IPC

Remoter solves the above problems in AIDL by allowing you to define the remote interface using plain java interface, and implement it using plain java implementation of the interface.

All you have to do is annotate the interface using @Remoter

@Remoter
public interface ISampleService {
    ...
}

At the client side

ISampleService sampleService = new ISampleService_Proxy( binder );

At the service side

Binder binder = new ISampleService_Stub( sampleServiceImpl );

That’s it!

Annotations

Getting Remoter

Gradle dependency

dependencies {
	//Replace "api" with "compile" for pre AndroidStudio 3
    api 'com.josesamuel:remoter-annotations:1.1.5'
    annotationProcessor 'com.josesamuel:remoter:1.1.5'
}

License

Copyright 2017 Joseph Samuel

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.