We need a package/pid to connect a session to a notification. This
adds a way to get those from the controller of a session.
Change-Id: I7700a341beebd46116dfb7dc82f1a667c718e728
This makes MediaRouter work with sessions to handle volume
requests. Should work with all existing custom volume handling.
Change-Id: I5dfde26a6203a1072b7fc700978b4ca852ebe7d0
* Also changes Rational to reduce the numerator/denominator by
its greatest common divisor at construction time (e.g. (2/4 -> 1/2)).
Bug: 15432042
Change-Id: Ib827abccf44a040667e5931cf9442afc86b57e2d
This change addresses the following comments from the council:
- Change the TvView API to be tune(String inputId, Uri channelUri) and
reset()
- @hide TvInputSession class, including createSession() and
SessionCallback
- Define a listener interface specific to TvView, allowing you to hide
the session details and keep the API simpler. Add
setTvInputListener().
Bug: 15345342
Change-Id: I931662841b41d862ebc4a700ccb245889a5f87a5
Channel logo is exposed via its own content URI,
"content://android.media.tv/channel/#/logo".
Program thumbnail is added as an URI column in existing program table.
Change-Id: I8dd636bbea9d3fa991ad42ccc03a198e8c1d051d
This change addresses the following comments from the council:
- Change TvView.setVolume() --> setStreamVolume()
- Surface only TvInputInfo.getServiceInfo() instead of the separate
getPackage/getService/getComponent calls. However, keep loadLabel()
at the top level.
- @hide register/unregisterListener() for the preview, since it binds
out to each service.
- TvInputService should document which permission it should protect
itself with.
- Remove TvInputService.setAvailable() for third-party developers.
- Change class name TvInputSessionImpl --> Session
- Change callback name to onSetStreamVolume() to match earlier change
Bug: 15345342
Change-Id: I3ce5cba7dad2622b78d16c408f81c4b0eba837a4
Make the AudioAttributes class parcelable.
Hide support for adding and querying tags, there is no SDK-backed
use case for this feature.
Bug 15306334
Change-Id: Idb67a735778e687d73020ed0120643f31fc230a6
Now, there can be only one SetupActivity and one SettingsActivity for
one TIS apk though one TIS apk can contain several services. Each TIS
need to be able to have its own SetupActivity and SettingsActivity.
BUG: 15177340
Change-Id: I2d944e3ef35c3a981483ba643fd27b15925bab16
This change addresses the following comments from the council:
- Provider authority should be "android.media.tv"
- Rename COLUMN_DATA to COLUMN_INTERNAL_PROVIDER_DATA and add comment to
indicate data is internal to the provider that inserted it, and should
not be decoded by other apps. It would be nice to restrict read access
to this column, but not essential.
- Hide COLUMN_LOCKED since implementation isn't defined yet, also
questions about how it interacts with Unicorn.
- Fix typo in ORIGINAL_NETWORK documentation.
- All provider MIME types need to be changed to follow platform
conventions: "vnd.android.cursor.dir/channel",
"vnd.android.cursor.dir/program", etc. (Notice singular tense and no
package prefixes since they're part of the platform API.)
- Rename Programs.COLUMN_DATA to COLUMN_INTERNAL_PROVIDER_DATA, along
with docs update, for the same reasons as above.
- Rename COLUMN_DESCRIPTION to COLUMN_SHORT_DESCRIPTION and update docs
to indicate it's a recommended maximum length, not a hard cap.
- COLUMN_GENRE should be split into two columns: COLUMN_BROADCAST_GENRE
(from broadcast standard) and COLUMN_CANONICAL_GENRE (from an Android
standard). Define a subclass with the Android canonical genres, which
are simple strings that are comma-separated when inserted into
COLUMN_CANONICAL_GENRE.
Bug: 15345342
Change-Id: I7f8e70aef617475a59d096fd73a551e7df8a1d3a