«Stub» - это класс, который реализует удаленный интерфейс таким образом, что вы можете использовать его, как если бы он был локальным. Он обрабатывает марафонирование/разборку данных и отправку/получение в/из удаленной службы. Термин «заглушка» обычно используется для описания этой функции в других методах RPC (COM, Java remoting и т. Д.), Но это может означать несколько разные вещи.
IDL (язык определения интерфейса), как правило, не зависит от языка, и вы можете теоретически генерировать код C++ или Python. Android один из них основан на Java, поэтому различие является тонким. Одно из отличий заключается в том, что вы можете иметь только один интерфейс в файле .aidl, тогда как Java допускает несколько классов/интерфейсов на один файл .java. Существуют также некоторые правила, для которых поддерживаются типы, поэтому он не совсем то же, что и интерфейс Java, и вы не можете использовать его вместо AIDL.
Я все еще смущен. Возможно, мне нужно больше времени. О инструментах IPC на разных компьютерных языках одинаковы? или они разные, но все они должны делать такие вещи. А на Java, особенно на базе SDK, если мы используем IDL, это будет проще? Могу я объяснить это так? Спасибо, Николай. – AmyWuGo
Это общие понятия. Хотя вы, вероятно, могли бы реализовать что-то другое, кроме AIDL в Android, оно не будет стандартным, поэтому вы можете просто думать о AIDL как о единственном стандартном RPC-механизме. –
Вы можете начать здесь, чтобы получить основную идею: http://en.wikipedia.org/wiki/Remote_procedure_call –