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
- Make sure input change listener is invoked
- The command from new device at the active path should
start routing control
Change-Id: Ic0ca52d42cc1738f9effced322b00f3bd1957f60
Added getActiveSource to provide Tv Input Service with the information
on HDMI active source/routing path. TIS side will be handled separately.
Change-Id: I3d7c12a6c9da9f96a7f22ba1f66ac2559928858d
Packages without their own backup agents can still have restorable
data to be delivered. Correct the logic for attempting a restore
at install time so that it no longer requires an app-defined backup
agent.
Bug 16688665
Change-Id: I7dcf7ef85ad6b5b393a2c97ce62f1b2eec9d3520
Removed all communication from wm to device policy manager.
Added initialization of cache in wm by dpms.
Change-Id: Ifa0b8bfcd625464b156d5cc0fb66d342deda1c27
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
There are some bugs where getActiveNetworkInfo gives bad data (seemingly)
and this will give the backing data in logs.
bug:16610051
Change-Id: Iad867485ad78daeb3e88665dcd0fdb0af756a3bf
Support setting the source when adding geofences.
b/14117199
Surface the source when FLP geofence changes state.
b/14119200
Change-Id: I50dc40a9caee400594e1778c98e284e0db0d5e66
Some OEM/SOC will keep passing the received packets until the
application processor goes to the sleep mode actually. so we'll
not clear the local devices to get the received packets and react
like in the standby mode.
Bug: 16661406
Change-Id: I6eb9c21877a29905bb0084256dc6692fe0d07170
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 is needed for telephony and audio integration which should happen via async callbacks
that'll end up starting/stopping recognition.
e.g. if a startRecognition happens when in a phone call - the onDetectionStarted will get called once the phone
call ends.
For now the transient stoppages due to internal reasons will not be propagated back to the client.
Bug: 16514535
Bug: 16515468
Change-Id: I1b2b8edd28f5c5e67c453f66c23e1a67a626114e
If Socket.connect() times out, the socket cannot be used any
more - any attempt to do so fails with EBADF. Use a new
socket for each IP address.
Bug: 16664129
Change-Id: If3616df86f7c2da0eabd30dca5db65d0da85cb17
The activity manager should know when to lock the screen. If an admin
does want this to happen then they should be able to run both commands
in succession.
Also rectifies some creative code styling in the same DPM method.
@bug 15558805
Change-Id: I8918184a4585aa8b061eb4a68edc2ec6805d8127
Unsynchronizes the call into app code from setEnabledFeatures,
replacing it with a callback mechanism. Also makes this actually
work by fixing the check in TrustManagerService to take into account
whitelisting.
Change-Id: I0831752cd2d3158eda9c8404a5569498f11ac2ac
Adds a facility for trust agents to indicate if they
are ready to manage trust. Also adds an indication to
the lock icon on the lockscreen to show whether trust is
being managed.
Bug: 15518469
Bug: 16123013
Change-Id: Ie17f588aebeafe66c81dea4a69c733b0d2c72fd4
This change addresses the following API council feedback.
TvParentalControlManager:
-- Replace the listener interface with a broadcast Intent with well-known
action, something like ACTION_BLOCKED_RATINGS_CHANGED.
-- TvParentalControlManager goes away, and two remaining methods move to
TvInputManager.
== Implementation changes ==
-- The user-selected rating preferences should be stored in an XML file, and
loaded at boot by your internal system service. It should _not_ be stored in
a Secure/Global setting.
Bug: 16542165
Change-Id: I278df963576652ec9163a66c1ef99419fcdb36c2
Bitmaps added to TaskPersister were piling up in the queue.
- The mRecentsChanged flag was being modified without holding the
lock. There is no mRecentsChanged flag now. Everything to be
written goes into a queue.
- TaskPersister now runs until the queue is empty.
- Bitmaps being written to the same file were being added to the
end of the queue without replacing the earlier bitmap. Now we
search the queue for matching tasks and replace the bitmaps
if needed.
- Method notify() was renamed to wakeup() so IDE could find usages
quicker.
- Bitmaps that were being requested but were still in the queue
are now being fetched from the queue.
Fixes bug 16512870.
Change-Id: Idca1c712e5d2df8196e93faaf563a54405ee96bf
priv apps can request to become a profile owner after setup has
completed. This will pop up a consent dialog (in Settings).
Also, clean up profile owner concept to be a component name.
Change-Id: I5e8532866e8018f61836c4e84fbbadb6150218ae
Previously input change listener is not invoked if the routing change
does not cause the TV port change, but this failed to trigger the change
from an active source connected to port 1 to a non-cec device also
connected to port 1. Do this by comparing paths not ports.
Also did some cleanup:
- Avoid allocating empty lists too often for getActions
- ActiveSource.invalidate()
Change-Id: Id79531e2552ef7fa38bd604796108b8650db69a1
- Accept the broadcast <Standby> message.
- Fix the bug that onStandyCompleted() is called mutliple times.
- Fix the issue that <Standby> message is not sent when going to
the standby state, since the local device was cleared already.
Bug: 16497304
Change-Id: Ib04ad2386621929814a801edd6b6c0e1a3902a7c
When signalled by an external CEC device about to become a new active
source, TIF(TvInputHardwareManager) sends an intent for TV app to tune to
the input mapped to the device. For non-CEC devices or MHL device
the device info comes with port ID only, which should be used to find
the right input.
Change-Id: I71c8454fead037d880ee440b0a8d64dd361ed558