Commit Graph

4164 Commits

Author SHA1 Message Date
Christopher Tate
2e40d115ca Add BackupAgent.onRestoreFinished() callback
The agent's onRestoreFinished() method is called after all available
data has been delivered to the app, whether via the key/value restore
API or the full-data file-at-a-time API.  This gives the app a stable
opportunity to do any postprocessing that might be appropriate.

Also fixes a lingering bug in the framework's handling of backup
agent lifetimes.  In cases where an existing agent instances was
being rebound, the framework was forgetting to notify the dependent
that the agent was available.  This was causing timeouts and restore
failure.

Bug 16241004

Change-Id: I3f52b299312d30d38b0cba63a2cfaeb934991ef2
2014-07-17 17:43:24 +00:00
Adam Connors
c8fa3ae2ce Merge "Create DPM APIs for cross profile callerId" into lmp-dev 2014-07-17 00:15:07 +00:00
Adam Connors
210fe21e95 Create DPM APIs for cross profile callerId
Contact information in the managed profile is shown
in the incoming call UI unless blocked using this API.

TODO: Actually plumb this into the caller-id logic.

Bug: 16301261
Change-Id: If03adc907d9558baa0a45a1833b857206b7bf96a
2014-07-17 16:28:52 +01:00
Alexandra Gherghina
999d394ade Ads per-user APIs to manage accounts through the AccountManager
Bug: 16056552
Bug: 14642886
Change-Id: I17ff6c2515285e63c84cecf2f861d10666c393c5
2014-07-17 17:08:49 +00:00
Dianne Hackborn
fee756ff91 Implement issue #16330060: Inform ActivityManager about WebView...
...state changes.

Add a new API to tell the activity manager about a new dependency
one process has on another package.  Start using it already for
when apps is Context.createPackageContext() to load code from another
app.

Also do some work on getting the monitoring of proc/uid states
in shape so it can be used by unundled code, along with an
AppImportanceMonitor class for doing so.

Some small fixes and additions to VoiceInteractionService.

Improve handling of unaccounted/overcounted battery use so that
they aren't shown to the user unless they are significant.

Change-Id: I22dd79a73f4e70103d3f8964494aebc8a31f971c
2014-07-16 22:50:31 -07:00
Alan Viverette
5134478151 Add public attributes for TimePicker styling
BUG: 11218747
Change-Id: Ifdf981280ebe20a9066f219c9a4505d0d7486b2e
2014-07-17 04:36:11 +00:00
Vinit Deshpande
7686c061b7 Introduce RTT Manager
Change-Id: Ic9a16d587897b272f85cdb2b8c52b51bca060d18
2014-07-17 00:45:20 +00:00
Christopher Tate
c295a44336 Merge "Always call finishBackup() if performFullBackup() succeeded" into lmp-dev 2014-07-16 16:25:13 +00:00
Christopher Tate
a176d22110 Always call finishBackup() if performFullBackup() succeeded
Even if we later get an error from sendBackupData() we need to give
the transport its teardown callback.  This simplifies the transport
logic considerably.

Change-Id: Ib8c0e210d4a876ee6b083a4d619dfccc462da4e5
2014-07-16 13:10:58 -07:00
Fabrice Di Meglio
278387fb5f Fix bug #16309454 Broken recent button after dismissing set time dialog
- correct set and use the Canceled state

Change-Id: Id60ae14c493254193ee677b66388a64a49618273
2014-07-16 20:13:45 +00:00
Narayan Kamath
2053168eb4 Dexopt for Context.createPackageContext when code is included.
The package manager now keeps track of per ISA dex-opt state.

There are two important things to keep in mind here :

- dexopt can potentially be very slow. In cases where the target
  package hasn't been dexopted yet, this can take multiple seconds
  and may cause an ANR in the caller if the context is being
  created from the main thread.
- We will need to remove the constraint that dexopt can only be
  requested by the system (or root). Apps will implicitly be
  requesting dexopt by asking for package contexts with code included.
  It's important to note that unlike dalvik, the dexopt stage in ART
  isn't optional. ART cannot load classes directly from dex files.

bug: 15313272
Change-Id: I0bd6c323a9c1f62f1c08f6292b7f0f7f08942726
2014-07-16 19:23:52 +01:00
Narayan Kamath
caa7119294 Temporary workaround for getApplicationInfo + multiArch.
Google play services client libraries construct native paths
using pm.getApplicationInfo().nativeLibraryDir.

This is a temporary workaround until we've switched all code
over to pm.createPackageContext().getApplicationInfo() or
whatever API we decide on to surface correct multi-arch
lib paths.

bug: 16013931

Change-Id: Ib719cf6f31da9a29b76e942cd2e28bda1f19b264
2014-07-16 17:58:42 +00:00
Narayan Kamath
d8723bd3d6 Merge "Adjust nativeLibraryDir for package contexts of multiArch installs." into lmp-dev 2014-07-16 01:00:53 +00:00
Narayan Kamath
7dba6eb3ac Adjust nativeLibraryDir for package contexts of multiArch installs.
When we're creating a package context for a multi-arch app,
adjust the native library directory to match the bitness of
the process creating the context.

This change also removes apkRoot (which wasn't really being used)
and replaces it with a fully constructed secondary library path.
The secondary library path is a transitional measure until we
can reorganize the system image so that we can use nativeLibraryRoot
for system paths as well (nativeLibraryRootRequiresIsa will then
be true for all packages except for legacy installs).

bug: 16013931

Change-Id: I5ae090334b377b9e087aecf40075fab81b20b132
2014-07-16 13:37:16 +01:00
Jeff Sharkey
d0a2de06a7 Merge "Add code cache directory for apps." into lmp-dev 2014-07-16 16:25:13 +00:00
Jeff Sharkey
4ed745d359 Add code cache directory for apps.
This provides a directory where apps can cache compiled or optimized
code generated at runtime.  The platform will delete all files in
this location on both app and platform upgrade.

Bug: 16187224
Change-Id: I641b21d841c436247f35ff235317e3a4ba520441
2014-07-15 22:13:26 -07:00
Adam Connors
655be2a98e Revert "Remove enableSystemApp methods."
We need to go back to uninstalling system apps so we can
re-install non-default system applications through Play.

This reverts commit e3dbcd138c07f2d32ac84229d0a49052cc18d424.

Change-Id: I0a7af094614c4a10800971c82e10571f7312e079
2014-07-16 09:48:43 +00:00
Amith Yamasani
c8c8425b51 App restrictions schema and parser
Documented the restrictions schema in RestrictionsManager docs.
Added a parser to read the meta-data and XML file on the device.
Added more types and methods in RestrictionEntry to accomodate some
new types and construction modes.
Added a styleable for restriction attributes.

Slight tweak to permission response params.

Bug: 14582645
Change-Id: I193d1162741d110c100831cab33b48e2baf7426c
2014-07-15 17:16:54 -07:00
Fabrice Di Meglio
bd9152f6ee Update DatePicker widget and its related dialog
- the old DatePicker widget is still there for obvious layout compatibility reasons
- add a new delegate implementation for having a new UI
- use the new delegate only for the DatePickerDialog (which does not need to be
the same)
- added support for Theming and light/dark Themes
- added support for RTL
- added support for Accessibility
- verified support for Keyboard
- verified that CTS tests for DatePicker are passing (for both the legacy and the
new widgets)

Also added a new HapticFeedbackConstants.CALENDAR_DATE and its related code for
enabling day selection vibration

Change-Id: I256bd7c21edd8f3b910413ca15ce26d3a5ef7d9c
2014-07-15 20:26:21 +00:00
Chris Wren
015e922fa7 Merge "Implement application-level high priority bit." into lmp-dev 2014-07-15 16:05:17 +00:00
Chris Wren
54bbef435e Implement application-level high priority bit.
Enable checkbox in settings and wire it to NotificationManagerSerivce.
Add RankingHelper to collect ranking configs and logic.

Bug: 15080024
Change-Id: Ib1d3b0b5ca4fcfdc52c2cb6838a009b9addf1094
2014-07-15 15:04:29 -04:00
Craig Mautner
bb74246278 Launch activity behind launching task.
Use ActivityOptions.makeLaunchTaskBehindAnimation() to launch tasks
behind the current task. Includes animations for launching and
launched tasks.

Fixes bug 16157517.

Change-Id: I0a94af70b4748592e94673b958ee824cfb3d7ec0
2014-07-15 11:36:25 -07:00
George Mount
01e9a97fe6 Don't lose ActivityOptions during orientation change.
Bug 16188506

Change-Id: I056153e6ddbaf328dd65b8b27a91ae773c33ea22
2014-07-15 14:38:28 +00:00
Jeff Sharkey
69ea974f17 Merge "Public API for PackageInstaller!" into lmp-dev 2014-07-15 00:41:06 +00:00
Jeff Sharkey
6c833e07a0 Public API for PackageInstaller!
Flesh out documentation and finalize first cut of API.  Also surface
installLocation and splitNames through PackageInfo.

Bug: 14975160, 15348430
Change-Id: Ic27696d20ed06e508aa3526218e9cb20835af6a0
2014-07-14 23:06:52 -07:00
Santos Cordon
a5a2cf419d Merge "Implement multi-SIM capabilities (1/6) [DO NOT MERGE]" into lmp-dev 2014-07-14 18:38:02 +00:00
Christopher Tate
a7835b6b6b Add Context.getNoBackupFilesDir()
This is an app-private filesystem space exactly like the one
reported by Context.getFilesDir(), with one exception:  files
placed here are never backed up by the full-backup infrastructure.
If an app attempts to back up any of its contents via the normal
API it's immediately ignored with a logged warning.

The restriction is also enforced on the restore side, because
apps using support libraries might wind up creating full backup
archives containing no_backup subdirs on pre-L devices (via
adb backup, Helium, &c.).  We check for this before passing the
restore data to the app, and drop it if we detect the situation
so that the app never sees the bits.

Bug 16240573

Change-Id: I11216a391f1d32117ec7ce15aafc9cd93d0337de
2014-07-14 22:56:04 +00:00
Jason Monk
8fd3800e78 Merge "Add missing lock task API" into lmp-dev 2014-07-14 18:37:56 +00:00
Jason Monk
386c94fdf9 Add missing lock task API
It seems that currently there is no un-hidden way to determine if
the device is in lock task.  This fixes that.

Change-Id: Ib5082b84de8073d261777b955fddff55367e5662
2014-07-14 16:42:24 -04:00
RoboErik
44583d351e Merge changes I51f2e466,I5b67cb3e into lmp-dev
* changes:
  Make PlaybackState immutable with a builder
  Add API to set a default session in Activity
2014-07-14 18:37:56 +00:00
Dake Gu
2178cee064 Merge "ActivityTransition: restore callee activity shared element position" into lmp-dev 2014-07-14 18:38:08 +00:00
Dake Gu
c18f4cc0f2 ActivityTransition: restore callee activity shared element position
Move the shared element of callee activity to animation start position,
then restore the measured size and locations to original values before
call requestLayout(),  this fixes cases for RecyclerView optimized layout
which offsets siblings by delta of measure size.

Change-Id: I6e43c036e26986605ff008aba476e30ebd270fd1
2014-07-14 13:59:43 -07:00
dcashman
9f92ffa927 Merge "Initial KeySet API." into lmp-dev 2014-07-14 18:38:08 +00:00
dcashman
9d2f441f9b Initial KeySet API.
Previously submitted but reverted due to doc-compilation bug.

Bug: 6967056
Change-Id: I9bd7ef299a4c92c4b327f5b5d7e951f0753b4c8a
2014-07-14 12:50:51 -07:00
Ihab Awad
807fe0a19a Implement multi-SIM capabilities (1/6) [DO NOT MERGE]
- Split PhoneAccount into PhoneAccount & PhoneAccountMetadata
- Move PhoneAccount methods from TelephonyManager to TelecommManager

Bug:16292368
Change-Id: Ib440368d6bd0572b63c942360450fde5c27d84b9
(cherry picked from commit 936b3552b4a3569be9904c826b95b632886fb45d)
2014-07-14 18:19:27 +00:00
RoboErik
550116576c Add API to set a default session in Activity
We may have multiple remote sessions at once so an app needs a way
to specify a default session to route media and volume commands to
when its activity is in the foreground. This adds an api that works
in parallel with the default stream api on Activity.

bug:15727927
Change-Id: I5b67cb3e20647f9437d90aa65be63efe8c7865cf
2014-07-14 11:17:06 -07:00
Jeff Sharkey
ad11eb52fe Pass install result message; path selection.
Oops, forgot to include message argument to invoke the new-style
callback.  Also use more robust way of generating cluster APK
directory names, and add more logging details on rename failure.

Change-Id: Ifa8abdd1db58b73e13b9a8077ec126cf20a0d90e
2014-07-14 10:57:04 -07:00
Alexandra Gherghina
83231457d3 Adds hidden startActivityForResultAsUser APIs
Bug: 16056552
Change-Id: Ib50f95782748a9dfdb2ee64225971128ac78e1c8
2014-07-14 12:47:09 +01:00
Amith Yamasani
f6e2fcc2ea Improvements to Restrictions API
Convert restrictions provider to a service instead of a receiver.
Add a way to get pending responses from restrictions provider.
Add AbstractRestrictionsProvider.
Add a callback API for responses.

Removed some constants in RestrictionsManager.
Added new constants for errors and error codes.
Much improved javadocs.

Bug: 16176009

Change-Id: I838a50fabc80b94b632294b3a55cd5d8092acf55
2014-07-13 07:17:56 -07:00
dcashman
5de7377fec Revert "Initial KeySet API."
This reverts commit 9a643fe02bc960e266484547dda5572b094a4c72.
2014-07-12 13:04:20 -07:00
dcashman
405912bce0 Initial KeySet API.
Bug: 6967056
Change-Id: I47a01bd5dc25591cc70f58f38920ad0a021094ae
2014-07-12 12:09:40 -07:00
Jeff Sharkey
bb58067035 Progress toward installer public API: callbacks.
Instead of surfacing all the existing cryptic error codes, we're
going to classify them into broad categories when surfacing through
public API.  This change introduces InstallResultCallback and
UninstallResultCallback, and wires them up to existing AIDL
interfaces.

Also start defining general SessionObserver for apps interested
in general progress details, such as Launcher apps.  Details about
active sessions are returned through new InstallSessionInfo objects.

Bug: 14975160
Change-Id: I068e2b0c30135f6340f59ae0fff93c321047f8f9
2014-07-11 16:54:49 -07:00
Fabrice Di Meglio
dfaa6c7439 Fix TimePicker behavior
- use Alert Theme and make the TimePickerDialog show its done button
in the legacy mode
- if targetSdkVersion < L or if TV UI show the legacy TimePicker

Change-Id: I19ca6dbbcb50599c7e230262a23956c185f53a5c
2014-07-11 22:48:26 +00:00
Craig Mautner
a228ae95ea Add task affiliation
Introduces new flag Intent.FLAG_ACTIVITY_LAUNCH_BEHIND which
causes the newly launched task to affiliate with the launching task.
(Later this flag will also launch the task behind the current task).
This shows up in a new member of the RecentTaskInfo class. This also
causes the recents list returned by getRecentsInfo to be rearranged
so that affiliated tasks are together.

Fixes bug 16157517.

Change-Id: Ia1386af50da2f01809278b62d249f05c6a0de951
2014-07-11 21:18:27 +00:00
Barnaby James
d3fdb8bed8 Add VoiceInteraction request type for successful actions.
Add CompleteVoiceRequest to VoiceInteractor to allow apps to indicate when a voice interaction was successfully completed.

Change-Id: I1481cfe96e9e2495d88a7a4fb62263bdd1e03c54
2014-07-11 10:34:50 -07:00
Leon Scroggins III
b7abf31023 Merge "Recycle original screenshot after rotation." 2014-07-10 21:28:08 +00:00
Matthew Williams
a76932b909 Merge "Add job persistance as a setter in the API" 2014-07-10 21:02:07 +00:00
Matthew Williams
900c67fc51 Add job persistance as a setter in the API
Bug: 15936795
Change-Id: I11e5a722bab5838dc151670256ed09dfaa7fdaa7
2014-07-10 16:51:27 -07:00
Adam Powell
8e77c47d7c Merge "Elevation for action bars" 2014-07-10 20:54:59 +00:00
Adam Powell
14d1fa4ba7 Elevation for action bars
Expose theme attributes and API for ActionBar to adjust elevation of
the bar.

Remove the windowContentOverlay fake shadow from material themes and
use elevation instead.

Mmm, realtime shadows.

Bug 16207490

Change-Id: I254567a13422b6d2f657b9991608398885f45204
2014-07-10 16:23:39 -07:00