Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(922)

Unified Diff: sky/sdk/README.md

Issue 1111573002: Add a blurb to the SDK README about Mojo IPC and Services. (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 5 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: sky/sdk/README.md
diff --git a/sky/sdk/README.md b/sky/sdk/README.md
index b2af94f7d422266d2300ba0f49270d706ec9687a..15319124f870a7a8a997a2fa1ce2cecd80c7081a 100644
--- a/sky/sdk/README.md
+++ b/sky/sdk/README.md
@@ -150,3 +150,27 @@ https://github.com/domokit/mojo/tree/master/sky/apk/stocks
Eventually we plan to make this much easier and support platforms other than
Android, but that work is yet in progress.
+
+Adding Services to MyApp
+------------------------
+
+[Mojo IPC](https://github.com/domokit/mojo) is an inter-process-communication
+system designed to provide cross-thread, cross-process, and language-agnostic
+communication between applications. Sky uses Mojo IPC to make it possible
+to write UI code in Dart and yet depend on networking code, etc. written in
+another language. Services are replacable, meaning that Dart code
+written to use the `network_service` remains portable to any platform
+(iOS, Android, etc.) by simply providing a 'natively' written `network_service`.
+
+Embedders of the Sky Engine and consumers of the Sky Framework can use this
+same mechanism to expose not only existing services like the
+[Keyboard](https://github.com/domokit/mojo/blob/master/mojo/services/keyboard/public/interfaces/keyboard.mojom)
+service to allow Sky Framework Dart code to interface with the underlying
+platform's Keyboard, but also to expose any additional non-Dart business logic
+to Sky/Dart UI code.
+
+As and example, [SkyApplication](https://github.com/domokit/mojo/blob/master/sky/shell/org/domokit/sky/shell/SkyApplication.java)
+exposes a mojo `network_service` (required by Sky Engine C++ code)
+[SkyDemoApplication](https://github.com/domokit/mojo/blob/master/sky/apk/demo/org/domokit/sky/demo/SkyDemoApplication.java)
+additionally exposes `keyboard_service` and `sensor_service` for use by the Sky
+Framework from Dart.
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698