Internally we pause the recognition when:
- a phone call is active/off-hook/ringing
- or some other application grabs the microphone
we auto-resume when the condition that caused us to pause reverses.
Both these events are notified to the client via callbacks so that they can choose to display on their UI,
that the recognition is paused for some reason.
Bug: 16515468
Bug: 16740806
Bug: 16514535
Change-Id: Ib274d68522c8cf37d42402c875b16159957657f0
In L, the TimePicker was rewritten to use a clock face and the
DatePicker was rewritten to use a calendar. This
change allows developers to opt into the old style instead
(android:timePickerMode="spinner|clock" and
android:datePickerMode="spinner|calendar").)
Issue #16717952 Pre-L style android.widget.TimePicker on L
Issue #16846963 Allow developer to use legacy DatePicker appearance
Change-Id: I4ee071fcbc5bf25eab83d6a5cb6ff352a603f90a
1. Added API for badging an arbitrary drawable at a given location.
2. Updated the icon and previewImage deprecation as they are no longer
returning a badged drawable. The methods to load the icon and the
preview are now just making it easier for a developer to get the
drawables.
3. Fixed a bug in AppWidgetServiceImpl leading to a crash when a user
is removed.
4. Fixed a bug in AppWidgetHost which was unnecessarily caching its
package name and having code paths where the cached value was not
populated when calling into the system.
bug:14991269
Change-Id: I50d011a6597d88814715d5ec04ee67815e8ce0bd
Provide null-op methods so there is greater flexibility for classes
which extend this base class, but might not support all its methods.
In the future, if we add more methods to the *.aidl interface, this
class can work with binaries which extend this class but don't
implement all the methods since the superclass now implements those
methods.
Left onSetPreviewSurface and onSetDisplaySurface as abstract.
Bug: 16842159
Change-Id: Ie7fea6ef5d473e3924ef370392f380603a568800
This change would make the developers freely extend the Session class
out of the TvInputService class.
Change-Id: I7dc9501c771a6e4dcfcceeb1b294b95e612596eb
A recent change on the multi-track API surfaced an issue that it's hard to
identify selected tracks from the list of tracks obtained from
TvView.getTracks() method, especially when two or more tracks convey the same
track information (e.g. two English stereo audio tracks with the same sample
rate). This change introduced a new public method getId() in TvTrackInfo that
returns an ID with which one can identify the tracks uniquely. It also led to
minor signature changes across the multi-track API to make it more
developer-friendly in both application and TV input service developers'
perspectives.
Change-Id: I226f75e697b0ce52b44db7471660f6d9f646f6f9
This adds some fields for display purposes to MediaMetadata and also
makes the default for all text CharSequence instead of String. Also
adds a hidden method for getting a Description for the metadata.
bug: 11708293
Change-Id: I0ed58d9ac3aeff41325c4ccf5fed0539bbf03b4d
The goal of this change is to enable support for appwidget from
user profiles to the user main profile. A user profile is a user
which is associated as a child of the main user profile. For example,
a user may have a personal (parent) and corporate (child) profile.
The device policy should be able to control whether adding a widget
from a child profile and given packages is allowed. This change
assumes that all packages from managed profiles are white listed.
Another change will add the device policy changes.
Change-Id: I267260b55d74c48b112a29979a9f59eef7a8194e
In the standard TV content rating systems, there are no cases that
a TV content rating system is used for multiple countries.
Moreover, since we allow the case that the country code is null for
a custom rating system (e.g. YT), the country code should be removed.
Change-Id: I79472dbd491aa7efb40f3e081f90b45e13a91505
This change addresses the following issues raised in the API review:
TvInputPassthroughWrapperService needs to be rearchitected:
-- Create a nested class (possibly called RemoteTvInput) inside TvInputService that
represents remote connection to the underlying physical TV input (HDMI).
RemoteTvInput which will need to have additional method like createRemoteSession.
-- This class has methods to control that remote input, and a callback so TvInputService
to observe state changes.
-- Add TvInputService.onGetParentInputId() (no argument) which returns null by default.
-- Extend TvInputService.onCreateSession(String inputId, RemoteTvInput parent) to pass
in the RemoteTvInput requested by onGetParentInputId(), if any.
Bug: 16542165
Change-Id: Ic6b0c9b5d770c9d1f9377061af8dcb6bae0cb9dc
Also annotate the flags with @IntDef to make things clearer and safer
Add more debug logging
Revert to start/stop being synchronous since telephony and microphone will
need to be handled internally.
Bug: 16731586
Bug: 16514535
Bug: 16549061
Change-Id: I83695d52e9547269c95d443e4d921c9238b7401e
Instead of providing ways to override MmsConfig globally, this allows
the override per request, which is safer. Also added subId to the getter
of MessagingConfigurationManager.
b/16681649
Change-Id: Ia5ee391e2fa51fbdf87d111174d8df21f5f5e41f
This change addresses the following API council feedback.
- Remove all constants from TvContentRating. Instead this class becomes a
general parser for a tuple of "rating domain"+type+subtype(s).
- Instead of constants in the API, the rating definitions should come from
parsed XML meta-data tied to a TvInputService entry in the AndroidManifest.
This XML should define a ranked order of the rating constants along with
@string references for displaying in the Settings UI. Mention that the
"rating domain" should be scoped similar to a package name, for example
"com.youtube.ratings".
- For system-defined rating types (like US, Korea, etc) we should parse this
same XML format, but it may come from a hard-coded XML resource (since they
aren't tied to a single TvInputService.)
- Thoroughly document the built-in supported types in javadoc on TvContentRating.
Change-Id: I0a9526c73c8ca67fd0eeac63f3c63c05657a45e3
To resume install sessions across device boots, persist session
details and read at boot. Drop sessions older than 3 days, since
they're probably buggy installers.
Add session callback lifecycle around open/close to give home apps
details about active installs. Also give them a well-known intent
to show session details.
Extend Session to list staged APKs and open them read-only, giving
installers a mechanism to verify delivered bits, for example using
MessageDigest, before committing.
Switch to generating random session IDs instead of sequential.
Defensively resize app icons if too large. Reject runaway
installers when they have too many active sessions.
Bug: 16514389
Change-Id: I66c2266cb82fc72b1eb980a615566773f4290498
This change addresses the following API council feedback:
TvTrackInfo:
-- Remove all KEY_/VALUE_ constants, and replace with explicit,
strongly-typed accessor methods.
-- Add additional Bundle getExtras() method (in addition to the explicit
types); most of the time this Bundle will be null.
Bug: 16542165
Change-Id: Ie48cb170b2bbf07d9460fdc8ed77d7db01799772
The new APIs are needed to support SEEK.
Also modifies TelephonyManager.iccOpenLogicalChannel to return the status of
the command.
Change-Id: Iff2674fb0e23210f2579cb883e64571347ade5e6
Support setting the source when adding geofences.
b/14117199
Surface the source when FLP geofence changes state.
b/14119200
Change-Id: I50dc40a9caee400594e1778c98e284e0db0d5e66