1*d57664e9SAndroid Build Coastguard WorkerThis library (com.android.media.tv.remoteprovider.jar) is a shared java library 2*d57664e9SAndroid Build Coastguard Workercontaining classes required by unbundled atv remote providers. 3*d57664e9SAndroid Build Coastguard Worker 4*d57664e9SAndroid Build Coastguard Worker--- Rules of this library --- 5*d57664e9SAndroid Build Coastguard Workero This library is effectively a System API for unbundled emote service provider 6*d57664e9SAndroid Build Coastguard Worker that may be distributed outside the system image. So it MUST BE API STABLE. 7*d57664e9SAndroid Build Coastguard Worker You can add but not remove. The rules are the same as for the 8*d57664e9SAndroid Build Coastguard Worker public platform SDK API. 9*d57664e9SAndroid Build Coastguard Workero This library can see and instantiate internal platform classes, but it must not 10*d57664e9SAndroid Build Coastguard Worker expose them in any public method (or by extending them via inheritance). This would 11*d57664e9SAndroid Build Coastguard Worker break clients of the library because they cannot see the internal platform classes. 12*d57664e9SAndroid Build Coastguard Worker 13*d57664e9SAndroid Build Coastguard WorkerThis library is distributed in the system image, and loaded as 14*d57664e9SAndroid Build Coastguard Workera shared library. So you can change the implementation, but not 15*d57664e9SAndroid Build Coastguard Workerthe interface. In this way it is like framework.jar. 16*d57664e9SAndroid Build Coastguard Worker 17*d57664e9SAndroid Build Coastguard Worker--- Why does this library exist? --- 18*d57664e9SAndroid Build Coastguard Worker 19*d57664e9SAndroid Build Coastguard WorkerUnbundled atv remote providers (such as Emote app) cannot use internal 20*d57664e9SAndroid Build Coastguard Workerplatform classes. 21*d57664e9SAndroid Build Coastguard Worker 22*d57664e9SAndroid Build Coastguard WorkerThis library will eventually be replaced when the inputmanager 23*d57664e9SAndroid Build Coastguard Workerinfrastructure is ready with APIs allowing unbundled system apps to 24*d57664e9SAndroid Build Coastguard Workerinject events into uhid. 25*d57664e9SAndroid Build Coastguard WorkerThat API isn't ready yet so this library is a compromise to 26*d57664e9SAndroid Build Coastguard Workermake new capabilities available to the system.