diff options
Diffstat (limited to 'media/lib/remotedisplay/README.txt')
-rw-r--r-- | media/lib/remotedisplay/README.txt | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/media/lib/remotedisplay/README.txt b/media/lib/remotedisplay/README.txt new file mode 100644 index 0000000..5738dbe --- /dev/null +++ b/media/lib/remotedisplay/README.txt @@ -0,0 +1,27 @@ +This library (com.android.media.remotedisplay.jar) is a shared java library +containing classes required by unbundled remote display providers. + +--- Rules of this library --- +o This library is effectively a PUBLIC API for unbundled remote display providers + that may be distributed outside the system image. So it MUST BE API STABLE. + You can add but not remove. The rules are the same as for the + public platform SDK API. +o This library can see and instantiate internal platform classes, but it must not + expose them in any public method (or by extending them via inheritance). This would + break clients of the library because they cannot see the internal platform classes. + +This library is distributed in the system image, and loaded as +a shared library. So you can change the implementation, but not +the interface. In this way it is like framework.jar. + +--- Why does this library exists? --- + +Unbundled remote display providers (such as Cast) cannot use internal +platform classes. + +This library will eventually be replaced when the media route provider +infrastructure that is currently defined in the support library is reintegrated +with the framework in a new API. That API isn't ready yet so this +library is a compromise to make new capabilities available to the system +without exposing the full surface area of the support library media +route provider protocol. |