@Retention(value = RetentionPolicy.SOURCE)
@Target(value = ElementType.METHOD)
annotation RemoteCallable


Used to tag a method as callable using createRemoteCallback.

This is only valid on methods on concrete classes that implement CallbackReceiver. The method must have return type RemoteCallback, and should return LOCAL.

At compile time Methods tagged with RemoteCallable have hooks generated for them. The vast majority of the calls are done through generated code directly, so everything except for class names can be optimized/obfuscated. Given that remote callbacks are only accessible on platform components such as receivers and providers, they are already generally not able to be obfuscated.